rust/compiler/rustc_codegen_ssa/src/back
David Wood 08ed338f56 sess/cg: re-introduce split dwarf kind
In #79570, `-Z split-dwarf-kind={none,single,split}` was replaced by `-C
split-debuginfo={off,packed,unpacked}`. `-C split-debuginfo`'s packed
and unpacked aren't exact parallels to single and split, respectively.

On Unix, `-C split-debuginfo=packed` will put debuginfo into object
files and package debuginfo into a DWARF package file (`.dwp`) and
`-C split-debuginfo=unpacked` will put debuginfo into dwarf object files
and won't package it.

In the initial implementation of Split DWARF, split mode wrote sections
which did not require relocation into a DWARF object (`.dwo`) file which
was ignored by the linker and then packaged those DWARF objects into
DWARF packages (`.dwp`). In single mode, sections which did not require
relocation were written into object files but ignored by the linker and
were not packaged. However, both split and single modes could be
packaged or not, the primary difference in behaviour was where the
debuginfo sections that did not require link-time relocation were
written (in a DWARF object or the object file).

This commit re-introduces a `-Z split-dwarf-kind` flag, which can be
used to pick between split and single modes when `-C split-debuginfo` is
used to enable Split DWARF (either packed or unpacked).

Signed-off-by: David Wood <david.wood@huawei.com>
2022-01-06 09:32:42 +00:00
..
rpath Remove LibSource 2021-07-05 10:49:07 +02:00
archive.rs Move rustc_middle::middle::cstore to rustc_session. 2021-10-03 16:08:51 +02:00
command.rs Remove unnecessary sigils around Symbol::as_str() calls. 2021-12-15 17:32:14 +11:00
link.rs sess/cg: re-introduce split dwarf kind 2022-01-06 09:32:42 +00:00
linker.rs Only use the -dynamiclib flag when the linker is not ld 2021-11-14 18:49:18 +11:00
lto.rs Support -C passes in NewPM 2021-05-08 10:58:08 +02:00
metadata.rs Rollup merge of #92107 - nikic:rmeta-lnk-remove, r=nagisa 2022-01-04 16:34:15 +01:00
mod.rs Use the object crate for metadata reading 2021-05-07 18:48:58 +02:00
rpath.rs pass -Wl,-z,origin to set DF_ORIGIN when using rpath 2021-12-17 11:27:14 +00:00
symbol_export.rs Remove in_band_lifetimes from rustc_codegen_ssa 2021-12-15 00:41:41 -05:00
write.rs sess/cg: re-introduce split dwarf kind 2022-01-06 09:32:42 +00:00