rust/compiler/rustc_codegen_llvm/src
Rich Kadel 198ba3bd1c Injecting expressions in place of counters where helpful
Implementing the Graph traits for the BasicCoverageBlock
graph.

optimized replacement of counters with expressions plus new BCB graphviz

* Avoid adding coverage to unreachable blocks.
* Special case for Goto at the end of the body. Make it non-reportable.

Improved debugging and formatting options (from env)

Don't automatically add counters to BCBs without CoverageSpans. They may
still get counters but only if there are dependencies from
other BCBs that have spans, I think.

Make CodeRegions optional for Counters too. It is
possible to inject counters (`llvm.instrprof.increment` intrinsic calls
without corresponding code regions in the coverage map. An expression
can still uses these counter values.

Refactored instrument_coverage.rs -> instrument_coverage/mod.rs, and
then broke up the mod into multiple files.

Compiling with coverage, with the expression optimization, works on
the json5format crate and its dependencies.

Refactored debug features from mod.rs to debug.rs
2020-11-05 18:24:15 -08:00
..
back Implement -Z relax-elf-relocations=yes|no 2020-10-31 17:16:56 +01:00
coverageinfo Injecting expressions in place of counters where helpful 2020-11-05 18:24:15 -08:00
debuginfo u128 truncation and sign extension are not just interpreter related 2020-11-04 13:41:58 +00:00
llvm Rollup merge of #77950 - arlosi:sha256, r=eddyb 2020-11-03 19:32:26 +01:00
abi.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
allocator.rs Fix even more clippy warnings 2020-10-30 10:13:39 -04:00
asm.rs Fix even more clippy warnings 2020-10-30 10:13:39 -04:00
attributes.rs Cache foreign_modules query 2020-10-27 16:21:55 +01:00
base.rs Replace target.target with target and target.ptr_width with target.pointer_width 2020-10-15 12:02:24 +02:00
builder.rs Fix even more clippy warnings 2020-10-30 10:13:39 -04:00
callee.rs Replace target.target with target and target.ptr_width with target.pointer_width 2020-10-15 12:02:24 +02:00
common.rs s/Scalar::Raw/Scalar::Int 2020-11-04 10:11:31 +00:00
consts.rs Auto merge of #78280 - bugadani:span, r=lcnr 2020-11-04 17:17:01 +00:00
context.rs Fix even more clippy warnings 2020-10-30 10:13:39 -04:00
declare.rs Replace target.target with target and target.ptr_width with target.pointer_width 2020-10-15 12:02:24 +02:00
intrinsic.rs Review comments 2020-10-16 12:58:50 -04:00
lib.rs Rollup merge of #77795 - bjorn3:codegen_backend_interface_refactor, r=oli-obk 2020-10-14 02:30:38 +02:00
llvm_util.rs Replace target.target with target and target.ptr_width with target.pointer_width 2020-10-15 12:02:24 +02:00
metadata.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
mono_item.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00
type_.rs Remove MMX from Rust 2020-09-20 15:13:11 +02:00
type_of.rs Remove MMX from Rust 2020-09-20 15:13:11 +02:00
va_arg.rs Properly define va_arg and va_list for aarch64-apple-darwin 2020-10-25 21:37:01 -04:00
value.rs mv compiler to compiler/ 2020-08-30 18:45:07 +03:00