rust/compiler
David Wood ee073b5ec5
cg_llvm: split dwarf filename and comp dir
llvm-dwp concatenates `DW_AT_comp_dir` with `DW_AT_GNU_dwo_name` (only
when `DW_AT_comp_dir` exists), which can result in it failing to find
the DWARF object files.

In earlier testing, `DW_AT_comp_dir` wasn't present in the final
object and the current directory was the output directory.

When running tests through compiletest, the working directory of the
compilation is different from output directory and that resulted in
`DW_AT_comp_dir` being in the object file (and set to the current
working directory, rather than the output directory), and
`DW_AT_GNU_dwo_name` being set to the full path (rather than just
the filename), so llvm-dwp was failing.

This commit changes the compilation directory provided to LLVM to match
the output directory, where DWARF objects are output; and ensures that
only the filename is used for `DW_AT_GNU_dwo_name`.

Signed-off-by: David Wood <david@davidtw.co>
2020-12-16 10:33:52 +00:00
..
rustc
rustc_apfloat
rustc_arena
rustc_ast Accept arbitrary expressions in key-value attributes at parse time 2020-12-09 21:37:32 +03:00
rustc_ast_lowering Retain assembly operands span when lowering AST to HIR 2020-12-06 20:48:08 +01:00
rustc_ast_passes Rollup merge of #79851 - camelid:better-error-for-default-fn, r=davidtwco 2020-12-10 21:33:10 -08:00
rustc_ast_pretty
rustc_attr Get rid of clean::Deprecation 2020-12-14 22:00:46 -05:00
rustc_builtin_macros fix clippy::unnecessary_filter_map 2020-12-11 23:02:19 +01:00
rustc_codegen_cranelift cg_clif: fix build with split dwarf 2020-12-16 10:33:48 +00:00
rustc_codegen_llvm cg_llvm: split dwarf filename and comp dir 2020-12-16 10:33:52 +00:00
rustc_codegen_ssa compiletest: add split dwarf compare mode 2020-12-16 10:33:51 +00:00
rustc_data_structures
rustc_driver Fix unknown-crate when using self-profile with rustdoc 2020-12-01 12:54:03 -05:00
rustc_error_codes Rollup merge of #79639 - sasurau4:feature/add-long-explanation-E0212, r=GuillaumeGomez 2020-12-10 21:33:04 -08:00
rustc_errors
rustc_expand Remove some no longer necessary #[cfg(test)]s 2020-12-12 19:20:37 +03:00
rustc_feature tidy: Re-enable check for inline unit tests 2020-12-12 19:18:44 +03:00
rustc_fs_util
rustc_graphviz
rustc_hir Retain assembly operands span when lowering AST to HIR 2020-12-06 20:48:08 +01:00
rustc_hir_pretty Retain assembly operands span when lowering AST to HIR 2020-12-06 20:48:08 +01:00
rustc_incremental Auto merge of #74967 - Aaron1011:feature/incr-def-path-table, r=pnkfelix 2020-12-01 14:30:02 +00:00
rustc_index
rustc_infer simplify if let Some(_) = x to if x.is_some() (clippy::redundant_pattern_matching) 2020-12-08 20:27:49 +01:00
rustc_interface Convenience funcs for some_option.unwrap_or(...) 2020-12-14 17:27:27 -08:00
rustc_lexer Fix some clippy lints 2020-12-03 17:08:19 -05:00
rustc_lint don't create owned values for comparison (clippy::cmp_owned) 2020-12-08 20:27:48 +01:00
rustc_lint_defs Validate naked functions definitions 2020-12-07 00:00:00 +00:00
rustc_llvm llvm: update ffi bindings for split dwarf 2020-12-16 10:31:42 +00:00
rustc_macros ./x.py fmt 2020-12-13 13:36:01 -08:00
rustc_metadata Convenience funcs for some_option.unwrap_or(...) 2020-12-14 17:27:27 -08:00
rustc_middle Auto merge of #78068 - RalfJung:union-safe-assign, r=nikomatsakis 2020-12-15 11:31:03 +00:00
rustc_mir Auto merge of #78399 - vn-ki:gsgdt-graphviz, r=oli-obk 2020-12-15 22:00:02 +00:00
rustc_mir_build Auto merge of #73210 - wesleywiser:consts_in_debuginfo, r=oli-obk 2020-12-15 08:46:00 +00:00
rustc_parse Auto merge of #79978 - Aaron1011:fix/capture-broken-token, r=petrochenkov 2020-12-13 19:31:06 +00:00
rustc_parse_format
rustc_passes Rollup merge of #79844 - tmiasko:rwu-table-mod, r=lcnr 2020-12-09 13:38:34 -08:00
rustc_plugin_impl Store ForeignItem in a side table. 2020-11-26 21:29:27 +01:00
rustc_privacy Remove ForeignMod struct. 2020-11-26 21:32:27 +01:00
rustc_query_system Use def_path_hash_to_def_id when re-using a RawDefId 2020-12-10 16:04:19 -05:00
rustc_resolve Resolve enum field visibility correctly 2020-12-12 14:04:59 -08:00
rustc_save_analysis Remove ForeignMod struct. 2020-11-26 21:32:27 +01:00
rustc_serialize Fix some clippy lints 2020-12-03 17:08:19 -05:00
rustc_session cg_llvm: split dwarf filename and comp dir 2020-12-16 10:33:52 +00:00
rustc_span Switch to Symbol for item.name 2020-12-14 22:19:15 -05:00
rustc_symbol_mangling Convenience funcs for some_option.unwrap_or(...) 2020-12-14 17:27:27 -08:00
rustc_target Rollup merge of #79917 - sivadeilra:asm_symbols, r=petrochenkov 2020-12-10 21:33:19 -08:00
rustc_trait_selection use if let Some(x) = .. instead of ...map(|x|) to conditionally run fns that return () (clippy::option_map_unit_fn) 2020-12-11 23:02:19 +01:00
rustc_traits
rustc_ty_utils Be cautious of calling upvar_tys before mir 2020-11-29 19:20:28 -05:00
rustc_type_ir Fix typo in DebruijnIndex documentation 2020-12-12 16:13:06 +01:00
rustc_typeck Auto merge of #79956 - camelid:variant-field-vis, r=petrochenkov 2020-12-13 08:40:07 +00:00