rust/compiler/rustc_codegen_llvm/src
Cliff L. Biffle 98190b7168 Revert "Work around invalid DWARF bugs for fat LTO"
Since September, the toolchain has not been generating reliable DWARF
information for static variables when LTO is on. This has affected
projects in the embedded space where the use of LTO is typical. In our
case, it has kept us from bumping past the 2021-09-22 nightly toolchain
lest our debugger break. This has been a pretty dramatic regression for
people using debuggers and static variables. See #90357 for more info
and a repro case.

This commit is a mechanical revert of
d5de680e20 from PR #89041, which caused
the issue. (Note on that PR that the commit's author has requested it be
reverted.)

I have locally verified that this fixes #90357 by restoring the
functionality of both the repro case I posted on that bug, and debugger
behavior on real programs. There do not appear to be test cases for this
in the toolchain; if I've missed them, point me at 'em and I'll update
them.
2022-04-05 10:38:13 -07:00
..
back Revert "Work around invalid DWARF bugs for fat LTO" 2022-04-05 10:38:13 -07:00
coverageinfo add #[rustc_pass_by_value] to more types 2022-03-08 15:39:52 +01:00
debuginfo Spellchecking compiler code 2022-03-30 01:42:10 -04:00
llvm Revert "Work around invalid DWARF bugs for fat LTO" 2022-04-05 10:38:13 -07:00
abi.rs Pass LLVM string attributes as string slices 2022-03-03 00:28:50 +01:00
allocator.rs Auto merge of #88098 - Amanieu:oom_panic, r=nagisa 2022-03-18 03:01:46 +00:00
asm.rs Add LLVM attributes in batches instead of individually 2022-02-26 13:14:55 -05:00
attributes.rs Replace every String in Target(Options) with Cow<'static, str> 2022-04-03 21:29:57 +02:00
base.rs Add LLVM attributes in batches instead of individually 2022-02-26 13:14:55 -05:00
builder.rs Replace every String in Target(Options) with Cow<'static, str> 2022-04-03 21:29:57 +02:00
callee.rs Remove in_band_lifetimes from rustc_codegen_llvm 2021-12-16 14:43:32 -05:00
common.rs make memcmp return a value of c_int_width instead of i32 2022-04-02 17:21:08 -07:00
consts.rs debuginfo: Refactor debuginfo generation for types 2022-03-14 16:49:06 +01:00
context.rs Replace every String in Target(Options) with Cow<'static, str> 2022-04-03 21:29:57 +02:00
declare.rs Remove LLVM attribute removal 2022-02-28 00:02:11 -05:00
intrinsic.rs Replace every String in Target(Options) with Cow<'static, str> 2022-04-03 21:29:57 +02:00
lib.rs Skip needless bitset for debuginfo 2022-03-25 03:55:18 -07:00
llvm_util.rs Replace every String in Target(Options) with Cow<'static, str> 2022-04-03 21:29:57 +02:00
mono_item.rs Remove in_band_lifetimes from rustc_codegen_llvm 2021-12-16 14:43:32 -05:00
type_.rs Remove in_band_lifetimes from rustc_codegen_llvm 2021-12-16 14:43:32 -05:00
type_of.rs Improve AdtDef interning. 2022-03-11 13:31:24 +11:00
va_arg.rs Introduce Bx::switch_to_block 2022-02-24 12:18:21 +01:00
value.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00