rust/compiler/rustc_codegen_llvm/src
Jubilee 7f8108afc8
Rollup merge of #136053 - Zalathar:defer-counters, r=saethlin
coverage: Defer part of counter-creation until codegen

Follow-up to #135481 and #135873.

One of the pleasant properties of the new counter-assignment algorithm is that we can stop partway through the process, store the intermediate state in MIR, and then resume the rest of the algorithm during codegen. This lets it take into account which parts of the control-flow graph were eliminated by MIR opts, resulting in fewer physical counters and simpler counter expressions.

Those improvements end up completely obsoleting much larger chunks of code that were previously responsible for cleaning up the coverage metadata after MIR opts, while also doing a more thorough cleanup job.

(That change also unlocks some further simplifications that I've kept out of this PR to limit its scope.)
2025-02-10 00:51:49 -08:00
..
back rustc_codegen_llvm: remove outdated asm-to-obj codegen note 2025-01-22 17:58:50 -05:00
builder Rustfmt 2025-02-08 22:12:13 +00:00
coverageinfo coverage: Remove the old code for simplifying counters after MIR opts 2025-02-06 21:44:31 +11:00
debuginfo Auto merge of #136751 - bjorn3:update_rustfmt, r=Mark-Simulacrum 2025-02-09 15:44:16 +00:00
llvm Remove dead code from rustc_codegen_llvm and the LLVM wrapper 2025-02-06 16:53:52 -08:00
abi.rs Auto merge of #136751 - bjorn3:update_rustfmt, r=Mark-Simulacrum 2025-02-09 15:44:16 +00:00
allocator.rs Clean up FFI calls for operand bundles 2024-10-30 13:26:24 +11:00
asm.rs Auto merge of #129181 - beetrees:asm-spans, r=pnkfelix,compiler-errors 2024-12-12 02:34:06 +00:00
attributes.rs Rename OptimizeAttr::None to Default 2025-01-24 19:34:01 +00:00
base.rs Remove Linkage::Appending 2025-02-07 16:02:19 +00:00
builder.rs Handle the case where the or disjoint folds immediately to a constant 2025-02-02 21:04:10 -08:00
callee.rs rename rustc_attr to rustc_attr_parsing and create rustc_attr_data_structures 2024-12-16 19:08:19 +01:00
common.rs Auto merge of #135318 - compiler-errors:vtable-fixes, r=lcnr 2025-01-31 04:09:11 +00:00
consts.rs Rollup merge of #136426 - oli-obk:push-nkpuulwurykn, r=compiler-errors 2025-02-02 23:06:57 +01:00
context.rs Use ExistentialTraitRef throughout codegen 2025-01-30 15:34:00 +00:00
declare.rs Rollup merge of #135581 - EnzymeAD:refactor-codgencx, r=oli-obk 2025-01-24 23:25:42 +01:00
errors.rs Auto merge of #134794 - RalfJung:abi-required-target-features, r=workingjubilee 2025-01-05 23:21:06 +00:00
intrinsic.rs Rustfmt 2025-02-08 22:12:13 +00:00
lib.rs coverage: Defer part of counter-creation until codegen 2025-02-06 21:44:31 +11:00
llvm_util.rs ABI-required target features: warn when they are missing in base CPU (rather than silently enabling them) 2025-01-28 04:40:42 +01:00
mono_item.rs Remove Linkage::Private 2025-02-07 16:02:19 +00:00
type_.rs compiler: remove reexports from rustc_target::callconv 2025-02-07 11:25:18 -08:00
type_of.rs make no-variant types a dedicated Variants variant 2024-12-18 11:01:54 +01:00
va_arg.rs Teach rust core about Xtensa VaListImpl and add a custom lowering of vaarg for xtensa. 2024-12-03 10:54:08 +00:00
value.rs Add warn(unreachable_pub) to rustc_codegen_llvm. 2024-08-16 08:46:57 +10:00