Skip to content

Commit c079c8c

Browse files
committed
coverage: Remove code for making expression copies of BCB counters
Now that coverage statements can have multiple code regions attached to them, this code is never used.
1 parent 9616995 commit c079c8c

File tree

3 files changed

+3
-29
lines changed

3 files changed

+3
-29
lines changed

compiler/rustc_mir_transform/src/coverage/counters.rs

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -142,17 +142,6 @@ impl CoverageCounters {
142142
expression
143143
}
144144

145-
pub fn make_identity_counter(&mut self, counter_operand: Operand) -> BcbCounter {
146-
let some_debug_block_label = if self.debug_counters.is_enabled() {
147-
self.debug_counters.some_block_label(counter_operand).cloned()
148-
} else {
149-
None
150-
};
151-
self.make_expression(counter_operand, Op::Add, Operand::Zero, || {
152-
some_debug_block_label.clone()
153-
})
154-
}
155-
156145
/// Counter IDs start from one and go up.
157146
fn next_counter(&mut self) -> CounterId {
158147
let next = self.next_counter_id;

compiler/rustc_mir_transform/src/coverage/debug.rs

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -285,12 +285,6 @@ impl DebugCounters {
285285
}
286286
}
287287

288-
pub fn some_block_label(&self, operand: Operand) -> Option<&String> {
289-
self.some_counters.as_ref().and_then(|counters| {
290-
counters.get(&operand).and_then(|debug_counter| debug_counter.some_block_label.as_ref())
291-
})
292-
}
293-
294288
pub fn format_counter(&self, counter_kind: &BcbCounter) -> String {
295289
match *counter_kind {
296290
BcbCounter::Counter { .. } => {

compiler/rustc_mir_transform/src/coverage/mod.rs

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@ use self::spans::{CoverageSpan, CoverageSpans};
1414

1515
use crate::MirPass;
1616

17-
use rustc_data_structures::graph::WithNumNodes;
1817
use rustc_data_structures::sync::Lrc;
19-
use rustc_index::IndexVec;
2018
use rustc_middle::hir;
2119
use rustc_middle::middle::codegen_fn_attrs::CodegenFnAttrFlags;
2220
use rustc_middle::mir::coverage::*;
@@ -296,22 +294,15 @@ impl<'a, 'tcx> Instrumentor<'a, 'tcx> {
296294
let body_span = self.body_span;
297295
let file_name = Symbol::intern(&self.source_file.name.prefer_remapped().to_string_lossy());
298296

299-
let mut bcb_counters = IndexVec::from_elem_n(None, self.basic_coverage_blocks.num_nodes());
300-
301297
// Group the coverage spans by BCB, and process each BCB's spans at once.
302298
all_coverage_spans.sort_by_key(|span| span.bcb);
303299
for bcb_spans in all_coverage_spans.group_by(|a, b| a.bcb == b.bcb) {
304300
let bcb = bcb_spans[0].bcb;
305301

306-
let counter_kind = if let Some(&counter_operand) = bcb_counters[bcb].as_ref() {
307-
self.coverage_counters.make_identity_counter(counter_operand)
308-
} else if let Some(counter_kind) = self.coverage_counters.take_bcb_counter(bcb) {
309-
bcb_counters[bcb] = Some(counter_kind.as_operand());
310-
debug_used_expressions.add_expression_operands(&counter_kind);
311-
counter_kind
312-
} else {
302+
let counter_kind = self.coverage_counters.take_bcb_counter(bcb).unwrap_or_else(|| {
313303
bug!("Every BasicCoverageBlock should have a Counter or Expression");
314-
};
304+
});
305+
debug_used_expressions.add_expression_operands(&counter_kind);
315306
graphviz_data.add_bcb_coverage_spans_with_counter(bcb, bcb_spans, &counter_kind);
316307

317308
// Convert the coverage spans into a vector of code regions to be

0 commit comments

Comments
 (0)