diff --git a/compiler/rustc_mir_transform/src/coverage/counters.rs b/compiler/rustc_mir_transform/src/coverage/counters.rs index 46efdd16ee8..9e80f1f1c4a 100644 --- a/compiler/rustc_mir_transform/src/coverage/counters.rs +++ b/compiler/rustc_mir_transform/src/coverage/counters.rs @@ -9,7 +9,7 @@ use rustc_index::bit_set::BitSet; use rustc_middle::mir::coverage::{CounterId, CovTerm, Expression, ExpressionId, Op}; use tracing::{debug, debug_span, instrument}; -use crate::coverage::graph::{BasicCoverageBlock, CoverageGraph, TraverseCoverageGraphWithLoops}; +use crate::coverage::graph::{BasicCoverageBlock, CoverageGraph, ReadyFirstTraversal}; #[cfg(test)] mod tests; @@ -236,23 +236,12 @@ impl<'a> CountersBuilder<'a> { // Traverse the coverage graph, ensuring that every node that needs a // coverage counter has one. - // - // The traversal tries to ensure that, when a loop is encountered, all - // nodes within the loop are visited before visiting any nodes outside - // the loop. - let mut traversal = TraverseCoverageGraphWithLoops::new(self.graph); - while let Some(bcb) = traversal.next() { + for bcb in ReadyFirstTraversal::new(self.graph) { let _span = debug_span!("traversal", ?bcb).entered(); if self.bcb_needs_counter.contains(bcb) { self.make_node_counter_and_out_edge_counters(bcb); } } - - assert!( - traversal.is_complete(), - "`TraverseCoverageGraphWithLoops` missed some `BasicCoverageBlock`s: {:?}", - traversal.unvisited(), - ); } /// Make sure the given node has a node counter, and then make sure each of diff --git a/compiler/rustc_mir_transform/src/coverage/graph.rs b/compiler/rustc_mir_transform/src/coverage/graph.rs index 092bce1de2c..ad6774fccd6 100644 --- a/compiler/rustc_mir_transform/src/coverage/graph.rs +++ b/compiler/rustc_mir_transform/src/coverage/graph.rs @@ -9,7 +9,6 @@ use rustc_data_structures::graph::dominators::Dominators; use rustc_data_structures::graph::{self, DirectedGraph, StartNode}; use rustc_index::IndexVec; use rustc_index::bit_set::BitSet; -use rustc_middle::bug; use rustc_middle::mir::{self, BasicBlock, Terminator, TerminatorKind}; use tracing::debug; @@ -462,138 +461,6 @@ fn bcb_filtered_successors<'a, 'tcx>(terminator: &'a Terminator<'tcx>) -> Covera CoverageSuccessors { targets, is_yield } } -/// Maintains separate worklists for each loop in the BasicCoverageBlock CFG, plus one for the -/// CoverageGraph outside all loops. This supports traversing the BCB CFG in a way that -/// ensures a loop is completely traversed before processing Blocks after the end of the loop. -#[derive(Debug)] -struct TraversalContext { - /// BCB with one or more incoming loop backedges, indicating which loop - /// this context is for. - /// - /// If `None`, this is the non-loop context for the function as a whole. - loop_header: Option, - - /// Worklist of BCBs to be processed in this context. - worklist: VecDeque, -} - -pub(crate) struct TraverseCoverageGraphWithLoops<'a> { - basic_coverage_blocks: &'a CoverageGraph, - - context_stack: Vec, - visited: BitSet, -} - -impl<'a> TraverseCoverageGraphWithLoops<'a> { - pub(crate) fn new(basic_coverage_blocks: &'a CoverageGraph) -> Self { - let worklist = VecDeque::from([basic_coverage_blocks.start_node()]); - let context_stack = vec![TraversalContext { loop_header: None, worklist }]; - - // `context_stack` starts with a `TraversalContext` for the main function context (beginning - // with the `start` BasicCoverageBlock of the function). New worklists are pushed to the top - // of the stack as loops are entered, and popped off of the stack when a loop's worklist is - // exhausted. - let visited = BitSet::new_empty(basic_coverage_blocks.num_nodes()); - Self { basic_coverage_blocks, context_stack, visited } - } - - pub(crate) fn next(&mut self) -> Option { - debug!( - "TraverseCoverageGraphWithLoops::next - context_stack: {:?}", - self.context_stack.iter().rev().collect::>() - ); - - while let Some(context) = self.context_stack.last_mut() { - let Some(bcb) = context.worklist.pop_front() else { - // This stack level is exhausted; pop it and try the next one. - self.context_stack.pop(); - continue; - }; - - if !self.visited.insert(bcb) { - debug!("Already visited: {bcb:?}"); - continue; - } - debug!("Visiting {bcb:?}"); - - if self.basic_coverage_blocks.is_loop_header.contains(bcb) { - debug!("{bcb:?} is a loop header! Start a new TraversalContext..."); - self.context_stack - .push(TraversalContext { loop_header: Some(bcb), worklist: VecDeque::new() }); - } - self.add_successors_to_worklists(bcb); - return Some(bcb); - } - - None - } - - fn add_successors_to_worklists(&mut self, bcb: BasicCoverageBlock) { - let successors = &self.basic_coverage_blocks.successors[bcb]; - debug!("{:?} has {} successors:", bcb, successors.len()); - - for &successor in successors { - if successor == bcb { - debug!( - "{:?} has itself as its own successor. (Note, the compiled code will \ - generate an infinite loop.)", - bcb - ); - // Don't re-add this successor to the worklist. We are already processing it. - // FIXME: This claims to skip just the self-successor, but it actually skips - // all other successors as well. Does that matter? - break; - } - - // Add successors of the current BCB to the appropriate context. Successors that - // stay within a loop are added to the BCBs context worklist. Successors that - // exit the loop (they are not dominated by the loop header) must be reachable - // from other BCBs outside the loop, and they will be added to a different - // worklist. - // - // Branching blocks (with more than one successor) must be processed before - // blocks with only one successor, to prevent unnecessarily complicating - // `Expression`s by creating a Counter in a `BasicCoverageBlock` that the - // branching block would have given an `Expression` (or vice versa). - - let context = self - .context_stack - .iter_mut() - .rev() - .find(|context| match context.loop_header { - Some(loop_header) => { - self.basic_coverage_blocks.dominates(loop_header, successor) - } - None => true, - }) - .unwrap_or_else(|| bug!("should always fall back to the root non-loop context")); - debug!("adding to worklist for {:?}", context.loop_header); - - // FIXME: The code below had debug messages claiming to add items to a - // particular end of the worklist, but was confused about which end was - // which. The existing behaviour has been preserved for now, but it's - // unclear what the intended behaviour was. - - if self.basic_coverage_blocks.successors[successor].len() > 1 { - context.worklist.push_back(successor); - } else { - context.worklist.push_front(successor); - } - } - } - - pub(crate) fn is_complete(&self) -> bool { - self.visited.count() == self.visited.domain_size() - } - - pub(crate) fn unvisited(&self) -> Vec { - let mut unvisited_set: BitSet = - BitSet::new_filled(self.visited.domain_size()); - unvisited_set.subtract(&self.visited); - unvisited_set.iter().collect::>() - } -} - /// Wrapper around a [`mir::BasicBlocks`] graph that restricts each node's /// successors to only the ones considered "relevant" when building a coverage /// graph. @@ -622,3 +489,126 @@ impl<'a, 'tcx> graph::Successors for CoverageRelevantSubgraph<'a, 'tcx> { self.coverage_successors(bb).into_iter() } } + +/// State of a node in the coverage graph during ready-first traversal. +#[derive(Clone, Copy, Debug, PartialEq, Eq, PartialOrd, Ord)] +enum ReadyState { + /// This node has not yet been added to the fallback queue or ready queue. + Unqueued, + /// This node is currently in the fallback queue. + InFallbackQueue, + /// This node's predecessors have all been visited, so it is in the ready queue. + /// (It might also have a stale entry in the fallback queue.) + InReadyQueue, + /// This node has been visited. + /// (It might also have a stale entry in the fallback queue.) + Visited, +} + +/// Iterator that visits nodes in the coverage graph, in an order that always +/// prefers "ready" nodes whose predecessors have already been visited. +pub(crate) struct ReadyFirstTraversal<'a> { + graph: &'a CoverageGraph, + + /// For each node, the number of its predecessor nodes that haven't been visited yet. + n_unvisited_preds: IndexVec, + /// Indicates whether a node has been visited, or which queue it is in. + state: IndexVec, + + /// Holds unvisited nodes whose predecessors have all been visited. + ready_queue: VecDeque, + /// Holds unvisited nodes with some unvisited predecessors. + /// Also contains stale entries for nodes that were upgraded to ready. + fallback_queue: VecDeque, +} + +impl<'a> ReadyFirstTraversal<'a> { + pub(crate) fn new(graph: &'a CoverageGraph) -> Self { + let num_nodes = graph.num_nodes(); + + let n_unvisited_preds = + IndexVec::from_fn_n(|node| graph.predecessors[node].len() as u32, num_nodes); + let mut state = IndexVec::from_elem_n(ReadyState::Unqueued, num_nodes); + + // We know from coverage graph construction that the start node is the + // only node with no predecessors. + debug_assert!( + n_unvisited_preds.iter_enumerated().all(|(node, &n)| (node == START_BCB) == (n == 0)) + ); + let ready_queue = VecDeque::from(vec![START_BCB]); + state[START_BCB] = ReadyState::InReadyQueue; + + Self { graph, state, n_unvisited_preds, ready_queue, fallback_queue: VecDeque::new() } + } + + /// Returns the next node from the ready queue, or else the next unvisited + /// node from the fallback queue. + fn next_inner(&mut self) -> Option { + // Always prefer to yield a ready node if possible. + if let Some(node) = self.ready_queue.pop_front() { + assert_eq!(self.state[node], ReadyState::InReadyQueue); + return Some(node); + } + + while let Some(node) = self.fallback_queue.pop_front() { + match self.state[node] { + // This entry in the fallback queue is not stale, so yield it. + ReadyState::InFallbackQueue => return Some(node), + // This node was added to the fallback queue, but later became + // ready and was visited via the ready queue. Ignore it here. + ReadyState::Visited => {} + // Unqueued nodes can't be in the fallback queue, by definition. + // We know that the ready queue is empty at this point. + ReadyState::Unqueued | ReadyState::InReadyQueue => unreachable!( + "unexpected state for {node:?} in the fallback queue: {:?}", + self.state[node] + ), + } + } + + None + } + + fn mark_visited_and_enqueue_successors(&mut self, node: BasicCoverageBlock) { + assert!(self.state[node] < ReadyState::Visited); + self.state[node] = ReadyState::Visited; + + // For each of this node's successors, decrease the successor's + // "unvisited predecessors" count, and enqueue it if appropriate. + for &succ in &self.graph.successors[node] { + let is_unqueued = match self.state[succ] { + ReadyState::Unqueued => true, + ReadyState::InFallbackQueue => false, + ReadyState::InReadyQueue => { + unreachable!("nodes in the ready queue have no unvisited predecessors") + } + // The successor was already visited via one of its other predecessors. + ReadyState::Visited => continue, + }; + + self.n_unvisited_preds[succ] -= 1; + if self.n_unvisited_preds[succ] == 0 { + // This node's predecessors have all been visited, so add it to + // the ready queue. If it's already in the fallback queue, that + // fallback entry will be ignored later. + self.state[succ] = ReadyState::InReadyQueue; + self.ready_queue.push_back(succ); + } else if is_unqueued { + // This node has unvisited predecessors, so add it to the + // fallback queue in case we run out of ready nodes later. + self.state[succ] = ReadyState::InFallbackQueue; + self.fallback_queue.push_back(succ); + } + } + } +} + +impl<'a> Iterator for ReadyFirstTraversal<'a> { + type Item = BasicCoverageBlock; + + fn next(&mut self) -> Option { + let node = self.next_inner()?; + self.mark_visited_and_enqueue_successors(node); + Some(node) + } +} diff --git a/tests/coverage/branch/guard.cov-map b/tests/coverage/branch/guard.cov-map index 1ba1c6e1228..7ca499bd847 100644 --- a/tests/coverage/branch/guard.cov-map +++ b/tests/coverage/branch/guard.cov-map @@ -1,35 +1,37 @@ Function name: guard::branch_match_guard -Raw bytes (85): 0x[01, 01, 06, 19, 0d, 05, 09, 0f, 15, 13, 11, 17, 0d, 05, 09, 0d, 01, 0c, 01, 01, 10, 02, 03, 0b, 00, 0c, 15, 01, 14, 02, 0a, 0d, 03, 0e, 00, 0f, 19, 00, 14, 00, 19, 20, 0d, 02, 00, 14, 00, 1e, 0d, 00, 1d, 02, 0a, 11, 03, 0e, 00, 0f, 02, 00, 14, 00, 19, 20, 11, 05, 00, 14, 00, 1e, 11, 00, 1d, 02, 0a, 17, 03, 0e, 02, 0a, 0b, 04, 01, 00, 02] +Raw bytes (89): 0x[01, 01, 08, 05, 0d, 05, 17, 0d, 11, 1f, 17, 05, 09, 0d, 11, 1f, 15, 05, 09, 0d, 01, 0c, 01, 01, 10, 02, 03, 0b, 00, 0c, 15, 01, 14, 02, 0a, 0d, 03, 0e, 00, 0f, 05, 00, 14, 00, 19, 20, 0d, 02, 00, 14, 00, 1e, 0d, 00, 1d, 02, 0a, 11, 03, 0e, 00, 0f, 02, 00, 14, 00, 19, 20, 11, 06, 00, 14, 00, 1e, 11, 00, 1d, 02, 0a, 0e, 03, 0e, 02, 0a, 1b, 04, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 -- expression 0 operands: lhs = Counter(6), rhs = Counter(3) -- expression 1 operands: lhs = Counter(1), rhs = Counter(2) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(5) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(4) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) -- expression 5 operands: lhs = Counter(1), rhs = Counter(2) +Number of expressions: 8 +- expression 0 operands: lhs = Counter(1), rhs = Counter(3) +- expression 1 operands: lhs = Counter(1), rhs = Expression(5, Add) +- expression 2 operands: lhs = Counter(3), rhs = Counter(4) +- expression 3 operands: lhs = Expression(7, Add), rhs = Expression(5, Add) +- expression 4 operands: lhs = Counter(1), rhs = Counter(2) +- expression 5 operands: lhs = Counter(3), rhs = Counter(4) +- expression 6 operands: lhs = Expression(7, Add), rhs = Counter(5) +- expression 7 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 13 - Code(Counter(0)) at (prev + 12, 1) to (start + 1, 16) - Code(Expression(0, Sub)) at (prev + 3, 11) to (start + 0, 12) - = (c6 - c3) + = (c1 - c3) - Code(Counter(5)) at (prev + 1, 20) to (start + 2, 10) - Code(Counter(3)) at (prev + 3, 14) to (start + 0, 15) -- Code(Counter(6)) at (prev + 0, 20) to (start + 0, 25) +- Code(Counter(1)) at (prev + 0, 20) to (start + 0, 25) - Branch { true: Counter(3), false: Expression(0, Sub) } at (prev + 0, 20) to (start + 0, 30) true = c3 - false = (c6 - c3) + false = (c1 - c3) - Code(Counter(3)) at (prev + 0, 29) to (start + 2, 10) - Code(Counter(4)) at (prev + 3, 14) to (start + 0, 15) - Code(Expression(0, Sub)) at (prev + 0, 20) to (start + 0, 25) - = (c6 - c3) -- Branch { true: Counter(4), false: Counter(1) } at (prev + 0, 20) to (start + 0, 30) + = (c1 - c3) +- Branch { true: Counter(4), false: Expression(1, Sub) } at (prev + 0, 20) to (start + 0, 30) true = c4 - false = c1 + false = (c1 - (c3 + c4)) - Code(Counter(4)) at (prev + 0, 29) to (start + 2, 10) -- Code(Expression(5, Add)) at (prev + 3, 14) to (start + 2, 10) - = (c1 + c2) -- Code(Expression(2, Add)) at (prev + 4, 1) to (start + 0, 2) - = ((((c1 + c2) + c3) + c4) + c5) -Highest counter ID seen: c6 +- Code(Expression(3, Sub)) at (prev + 3, 14) to (start + 2, 10) + = ((c1 + c2) - (c3 + c4)) +- Code(Expression(6, Add)) at (prev + 4, 1) to (start + 0, 2) + = ((c1 + c2) + c5) +Highest counter ID seen: c5 diff --git a/tests/coverage/branch/if-let.cov-map b/tests/coverage/branch/if-let.cov-map index 380765c7af4..773c5392465 100644 --- a/tests/coverage/branch/if-let.cov-map +++ b/tests/coverage/branch/if-let.cov-map @@ -19,14 +19,18 @@ Number of file 0 mappings: 7 Highest counter ID seen: c2 Function name: if_let::if_let_chain -Raw bytes (66): 0x[01, 01, 04, 01, 05, 05, 09, 0f, 0d, 05, 09, 0a, 01, 17, 01, 00, 33, 20, 02, 05, 01, 0c, 00, 13, 02, 00, 11, 00, 12, 01, 00, 16, 00, 17, 20, 0d, 09, 01, 10, 00, 17, 0d, 00, 15, 00, 16, 02, 00, 1a, 00, 1b, 0d, 01, 05, 03, 06, 0f, 03, 0c, 02, 06, 0b, 03, 05, 01, 02] +Raw bytes (74): 0x[01, 01, 08, 01, 05, 01, 1f, 05, 09, 01, 1f, 05, 09, 01, 1f, 05, 09, 05, 09, 0a, 01, 17, 01, 00, 33, 20, 02, 05, 01, 0c, 00, 13, 02, 00, 11, 00, 12, 01, 00, 16, 00, 17, 20, 16, 09, 01, 10, 00, 17, 16, 00, 15, 00, 16, 02, 00, 1a, 00, 1b, 16, 01, 05, 03, 06, 1f, 03, 0c, 02, 06, 01, 03, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 +Number of expressions: 8 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Counter(1), rhs = Counter(2) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(3) -- expression 3 operands: lhs = Counter(1), rhs = Counter(2) +- expression 1 operands: lhs = Counter(0), rhs = Expression(7, Add) +- expression 2 operands: lhs = Counter(1), rhs = Counter(2) +- expression 3 operands: lhs = Counter(0), rhs = Expression(7, Add) +- expression 4 operands: lhs = Counter(1), rhs = Counter(2) +- expression 5 operands: lhs = Counter(0), rhs = Expression(7, Add) +- expression 6 operands: lhs = Counter(1), rhs = Counter(2) +- expression 7 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 10 - Code(Counter(0)) at (prev + 23, 1) to (start + 0, 51) - Branch { true: Expression(0, Sub), false: Counter(1) } at (prev + 1, 12) to (start + 0, 19) @@ -35,16 +39,17 @@ Number of file 0 mappings: 10 - Code(Expression(0, Sub)) at (prev + 0, 17) to (start + 0, 18) = (c0 - c1) - Code(Counter(0)) at (prev + 0, 22) to (start + 0, 23) -- Branch { true: Counter(3), false: Counter(2) } at (prev + 1, 16) to (start + 0, 23) - true = c3 +- Branch { true: Expression(5, Sub), false: Counter(2) } at (prev + 1, 16) to (start + 0, 23) + true = (c0 - (c1 + c2)) false = c2 -- Code(Counter(3)) at (prev + 0, 21) to (start + 0, 22) +- Code(Expression(5, Sub)) at (prev + 0, 21) to (start + 0, 22) + = (c0 - (c1 + c2)) - Code(Expression(0, Sub)) at (prev + 0, 26) to (start + 0, 27) = (c0 - c1) -- Code(Counter(3)) at (prev + 1, 5) to (start + 3, 6) -- Code(Expression(3, Add)) at (prev + 3, 12) to (start + 2, 6) +- Code(Expression(5, Sub)) at (prev + 1, 5) to (start + 3, 6) + = (c0 - (c1 + c2)) +- Code(Expression(7, Add)) at (prev + 3, 12) to (start + 2, 6) = (c1 + c2) -- Code(Expression(2, Add)) at (prev + 3, 5) to (start + 1, 2) - = ((c1 + c2) + c3) -Highest counter ID seen: c3 +- Code(Counter(0)) at (prev + 3, 5) to (start + 1, 2) +Highest counter ID seen: c2 diff --git a/tests/coverage/branch/if.cov-map b/tests/coverage/branch/if.cov-map index bab982dd44c..3d9a1d2e1ab 100644 --- a/tests/coverage/branch/if.cov-map +++ b/tests/coverage/branch/if.cov-map @@ -1,14 +1,11 @@ Function name: if::branch_and -Raw bytes (60): 0x[01, 01, 06, 05, 09, 0b, 09, 05, 11, 13, 09, 17, 11, 05, 0d, 08, 01, 2b, 01, 01, 10, 05, 03, 08, 00, 09, 20, 09, 02, 00, 08, 00, 09, 09, 00, 0d, 00, 0e, 20, 0d, 11, 00, 0d, 00, 0e, 0d, 00, 0f, 02, 06, 06, 02, 0c, 02, 06, 0e, 03, 01, 00, 02] +Raw bytes (54): 0x[01, 01, 03, 05, 09, 09, 0d, 05, 0d, 08, 01, 2b, 01, 01, 10, 05, 03, 08, 00, 09, 20, 09, 02, 00, 08, 00, 09, 09, 00, 0d, 00, 0e, 20, 0d, 06, 00, 0d, 00, 0e, 0d, 00, 0f, 02, 06, 0a, 02, 0c, 02, 06, 05, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 +Number of expressions: 3 - expression 0 operands: lhs = Counter(1), rhs = Counter(2) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(2) -- expression 2 operands: lhs = Counter(1), rhs = Counter(4) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(2) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(4) -- expression 5 operands: lhs = Counter(1), rhs = Counter(3) +- expression 1 operands: lhs = Counter(2), rhs = Counter(3) +- expression 2 operands: lhs = Counter(1), rhs = Counter(3) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 43, 1) to (start + 1, 16) - Code(Counter(1)) at (prev + 3, 8) to (start + 0, 9) @@ -16,15 +13,14 @@ Number of file 0 mappings: 8 true = c2 false = (c1 - c2) - Code(Counter(2)) at (prev + 0, 13) to (start + 0, 14) -- Branch { true: Counter(3), false: Counter(4) } at (prev + 0, 13) to (start + 0, 14) +- Branch { true: Counter(3), false: Expression(1, Sub) } at (prev + 0, 13) to (start + 0, 14) true = c3 - false = c4 + false = (c2 - c3) - Code(Counter(3)) at (prev + 0, 15) to (start + 2, 6) -- Code(Expression(1, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c1 + c4) - c2) -- Code(Expression(3, Sub)) at (prev + 3, 1) to (start + 0, 2) - = (((c1 + c3) + c4) - c2) -Highest counter ID seen: c4 +- Code(Expression(2, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c1 - c3) +- Code(Counter(1)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c3 Function name: if::branch_not Raw bytes (116): 0x[01, 01, 07, 05, 09, 05, 0d, 05, 0d, 05, 11, 05, 11, 05, 15, 05, 15, 12, 01, 0c, 01, 01, 10, 05, 03, 08, 00, 09, 20, 09, 02, 00, 08, 00, 09, 09, 01, 09, 00, 11, 02, 01, 05, 00, 06, 05, 01, 08, 00, 0a, 20, 0a, 0d, 00, 08, 00, 0a, 0a, 00, 0b, 02, 06, 0d, 02, 05, 00, 06, 05, 01, 08, 00, 0b, 20, 11, 12, 00, 08, 00, 0b, 11, 00, 0c, 02, 06, 12, 02, 05, 00, 06, 05, 01, 08, 00, 0c, 20, 1a, 15, 00, 08, 00, 0c, 1a, 00, 0d, 02, 06, 15, 02, 05, 00, 06, 05, 01, 01, 00, 02] @@ -108,14 +104,16 @@ Number of file 0 mappings: 14 Highest counter ID seen: c4 Function name: if::branch_or -Raw bytes (56): 0x[01, 01, 04, 05, 09, 09, 0d, 0f, 11, 09, 0d, 08, 01, 35, 01, 01, 10, 05, 03, 08, 00, 09, 20, 09, 02, 00, 08, 00, 09, 02, 00, 0d, 00, 0e, 20, 0d, 11, 00, 0d, 00, 0e, 0f, 00, 0f, 02, 06, 11, 02, 0c, 02, 06, 0b, 03, 01, 00, 02] +Raw bytes (60): 0x[01, 01, 06, 05, 09, 05, 17, 09, 0d, 09, 0d, 05, 17, 09, 0d, 08, 01, 35, 01, 01, 10, 05, 03, 08, 00, 09, 20, 09, 02, 00, 08, 00, 09, 02, 00, 0d, 00, 0e, 20, 0d, 12, 00, 0d, 00, 0e, 17, 00, 0f, 02, 06, 12, 02, 0c, 02, 06, 05, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 +Number of expressions: 6 - expression 0 operands: lhs = Counter(1), rhs = Counter(2) -- expression 1 operands: lhs = Counter(2), rhs = Counter(3) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(4) +- expression 1 operands: lhs = Counter(1), rhs = Expression(5, Add) +- expression 2 operands: lhs = Counter(2), rhs = Counter(3) - expression 3 operands: lhs = Counter(2), rhs = Counter(3) +- expression 4 operands: lhs = Counter(1), rhs = Expression(5, Add) +- expression 5 operands: lhs = Counter(2), rhs = Counter(3) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 53, 1) to (start + 1, 16) - Code(Counter(1)) at (prev + 3, 8) to (start + 0, 9) @@ -124,13 +122,13 @@ Number of file 0 mappings: 8 false = (c1 - c2) - Code(Expression(0, Sub)) at (prev + 0, 13) to (start + 0, 14) = (c1 - c2) -- Branch { true: Counter(3), false: Counter(4) } at (prev + 0, 13) to (start + 0, 14) +- Branch { true: Counter(3), false: Expression(4, Sub) } at (prev + 0, 13) to (start + 0, 14) true = c3 - false = c4 -- Code(Expression(3, Add)) at (prev + 0, 15) to (start + 2, 6) + false = (c1 - (c2 + c3)) +- Code(Expression(5, Add)) at (prev + 0, 15) to (start + 2, 6) = (c2 + c3) -- Code(Counter(4)) at (prev + 2, 12) to (start + 2, 6) -- Code(Expression(2, Add)) at (prev + 3, 1) to (start + 0, 2) - = ((c2 + c3) + c4) -Highest counter ID seen: c4 +- Code(Expression(4, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c1 - (c2 + c3)) +- Code(Counter(1)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c3 diff --git a/tests/coverage/branch/lazy-boolean.cov-map b/tests/coverage/branch/lazy-boolean.cov-map index decb847f60e..94522734bcd 100644 --- a/tests/coverage/branch/lazy-boolean.cov-map +++ b/tests/coverage/branch/lazy-boolean.cov-map @@ -34,86 +34,68 @@ Number of file 0 mappings: 6 Highest counter ID seen: c2 Function name: lazy_boolean::chain -Raw bytes (169): 0x[01, 01, 1d, 5b, 0d, 5f, 15, 05, 11, 05, 09, 09, 0d, 6f, 25, 73, 21, 19, 1d, 5b, 67, 5f, 15, 05, 11, 0d, 19, 5b, 67, 5f, 15, 05, 11, 0d, 19, 5b, 63, 5f, 15, 05, 11, 67, 1d, 0d, 19, 5b, 63, 5f, 15, 05, 11, 67, 1d, 0d, 19, 6f, 25, 73, 21, 19, 1d, 13, 01, 24, 01, 01, 10, 02, 04, 09, 00, 0a, 05, 00, 0d, 00, 12, 20, 09, 0e, 00, 0d, 00, 12, 09, 00, 16, 00, 1b, 20, 0d, 12, 00, 16, 00, 1b, 0d, 00, 1f, 00, 24, 20, 11, 15, 00, 1f, 00, 24, 11, 00, 28, 00, 2d, 02, 01, 05, 00, 11, 6b, 03, 09, 00, 0a, 02, 00, 0d, 00, 12, 20, 19, 32, 00, 0d, 00, 12, 32, 00, 16, 00, 1b, 20, 1d, 56, 00, 16, 00, 1b, 56, 00, 1f, 00, 24, 20, 21, 25, 00, 1f, 00, 24, 25, 00, 28, 00, 2d, 6b, 01, 05, 01, 02] -Number of files: 1 -- file 0 => global file 1 -Number of expressions: 29 -- expression 0 operands: lhs = Expression(22, Add), rhs = Counter(3) -- expression 1 operands: lhs = Expression(23, Add), rhs = Counter(5) -- expression 2 operands: lhs = Counter(1), rhs = Counter(4) -- expression 3 operands: lhs = Counter(1), rhs = Counter(2) -- expression 4 operands: lhs = Counter(2), rhs = Counter(3) -- expression 5 operands: lhs = Expression(27, Add), rhs = Counter(9) -- expression 6 operands: lhs = Expression(28, Add), rhs = Counter(8) -- expression 7 operands: lhs = Counter(6), rhs = Counter(7) -- expression 8 operands: lhs = Expression(22, Add), rhs = Expression(25, Add) -- expression 9 operands: lhs = Expression(23, Add), rhs = Counter(5) -- expression 10 operands: lhs = Counter(1), rhs = Counter(4) -- expression 11 operands: lhs = Counter(3), rhs = Counter(6) -- expression 12 operands: lhs = Expression(22, Add), rhs = Expression(25, Add) -- expression 13 operands: lhs = Expression(23, Add), rhs = Counter(5) -- expression 14 operands: lhs = Counter(1), rhs = Counter(4) -- expression 15 operands: lhs = Counter(3), rhs = Counter(6) -- expression 16 operands: lhs = Expression(22, Add), rhs = Expression(24, Add) -- expression 17 operands: lhs = Expression(23, Add), rhs = Counter(5) -- expression 18 operands: lhs = Counter(1), rhs = Counter(4) -- expression 19 operands: lhs = Expression(25, Add), rhs = Counter(7) -- expression 20 operands: lhs = Counter(3), rhs = Counter(6) -- expression 21 operands: lhs = Expression(22, Add), rhs = Expression(24, Add) -- expression 22 operands: lhs = Expression(23, Add), rhs = Counter(5) -- expression 23 operands: lhs = Counter(1), rhs = Counter(4) -- expression 24 operands: lhs = Expression(25, Add), rhs = Counter(7) -- expression 25 operands: lhs = Counter(3), rhs = Counter(6) -- expression 26 operands: lhs = Expression(27, Add), rhs = Counter(9) -- expression 27 operands: lhs = Expression(28, Add), rhs = Counter(8) -- expression 28 operands: lhs = Counter(6), rhs = Counter(7) -Number of file 0 mappings: 19 -- Code(Counter(0)) at (prev + 36, 1) to (start + 1, 16) -- Code(Expression(0, Sub)) at (prev + 4, 9) to (start + 0, 10) - = (((c1 + c4) + c5) - c3) -- Code(Counter(1)) at (prev + 0, 13) to (start + 0, 18) -- Branch { true: Counter(2), false: Expression(3, Sub) } at (prev + 0, 13) to (start + 0, 18) - true = c2 - false = (c1 - c2) -- Code(Counter(2)) at (prev + 0, 22) to (start + 0, 27) -- Branch { true: Counter(3), false: Expression(4, Sub) } at (prev + 0, 22) to (start + 0, 27) - true = c3 - false = (c2 - c3) -- Code(Counter(3)) at (prev + 0, 31) to (start + 0, 36) -- Branch { true: Counter(4), false: Counter(5) } at (prev + 0, 31) to (start + 0, 36) - true = c4 - false = c5 -- Code(Counter(4)) at (prev + 0, 40) to (start + 0, 45) -- Code(Expression(0, Sub)) at (prev + 1, 5) to (start + 0, 17) - = (((c1 + c4) + c5) - c3) -- Code(Expression(26, Add)) at (prev + 3, 9) to (start + 0, 10) - = (((c6 + c7) + c8) + c9) -- Code(Expression(0, Sub)) at (prev + 0, 13) to (start + 0, 18) - = (((c1 + c4) + c5) - c3) -- Branch { true: Counter(6), false: Expression(12, Sub) } at (prev + 0, 13) to (start + 0, 18) - true = c6 - false = (((c1 + c4) + c5) - (c3 + c6)) -- Code(Expression(12, Sub)) at (prev + 0, 22) to (start + 0, 27) - = (((c1 + c4) + c5) - (c3 + c6)) -- Branch { true: Counter(7), false: Expression(21, Sub) } at (prev + 0, 22) to (start + 0, 27) - true = c7 - false = (((c1 + c4) + c5) - ((c3 + c6) + c7)) -- Code(Expression(21, Sub)) at (prev + 0, 31) to (start + 0, 36) - = (((c1 + c4) + c5) - ((c3 + c6) + c7)) -- Branch { true: Counter(8), false: Counter(9) } at (prev + 0, 31) to (start + 0, 36) - true = c8 - false = c9 -- Code(Counter(9)) at (prev + 0, 40) to (start + 0, 45) -- Code(Expression(26, Add)) at (prev + 1, 5) to (start + 1, 2) - = (((c6 + c7) + c8) + c9) -Highest counter ID seen: c9 - -Function name: lazy_boolean::nested_mixed -Raw bytes (141): 0x[01, 01, 0f, 05, 09, 05, 1f, 09, 0d, 09, 0d, 1f, 11, 09, 0d, 1f, 11, 09, 0d, 3b, 21, 19, 1d, 05, 15, 15, 19, 05, 19, 3b, 21, 19, 1d, 13, 01, 31, 01, 01, 10, 05, 04, 09, 00, 0a, 05, 00, 0e, 00, 13, 20, 09, 02, 00, 0e, 00, 13, 02, 00, 17, 00, 1d, 20, 0d, 06, 00, 17, 00, 1d, 1f, 00, 23, 00, 28, 20, 11, 1a, 00, 23, 00, 28, 1a, 00, 2c, 00, 33, 05, 01, 05, 00, 11, 37, 03, 09, 00, 0a, 05, 00, 0e, 00, 13, 20, 15, 2a, 00, 0e, 00, 13, 15, 00, 17, 00, 1c, 20, 19, 2e, 00, 17, 00, 1c, 32, 00, 22, 00, 28, 20, 1d, 21, 00, 22, 00, 28, 1d, 00, 2c, 00, 33, 37, 01, 05, 01, 02] +Raw bytes (141): 0x[01, 01, 0f, 05, 09, 09, 0d, 0d, 11, 05, 15, 05, 15, 05, 3b, 15, 19, 05, 3b, 15, 19, 05, 37, 3b, 1d, 15, 19, 05, 37, 3b, 1d, 15, 19, 13, 01, 24, 01, 01, 10, 05, 04, 09, 00, 0a, 05, 00, 0d, 00, 12, 20, 09, 02, 00, 0d, 00, 12, 09, 00, 16, 00, 1b, 20, 0d, 06, 00, 16, 00, 1b, 0d, 00, 1f, 00, 24, 20, 11, 0a, 00, 1f, 00, 24, 11, 00, 28, 00, 2d, 05, 01, 05, 00, 11, 05, 03, 09, 00, 0a, 05, 00, 0d, 00, 12, 20, 15, 12, 00, 0d, 00, 12, 12, 00, 16, 00, 1b, 20, 19, 1e, 00, 16, 00, 1b, 1e, 00, 1f, 00, 24, 20, 1d, 32, 00, 1f, 00, 24, 32, 00, 28, 00, 2d, 05, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 15 - expression 0 operands: lhs = Counter(1), rhs = Counter(2) +- expression 1 operands: lhs = Counter(2), rhs = Counter(3) +- expression 2 operands: lhs = Counter(3), rhs = Counter(4) +- expression 3 operands: lhs = Counter(1), rhs = Counter(5) +- expression 4 operands: lhs = Counter(1), rhs = Counter(5) +- expression 5 operands: lhs = Counter(1), rhs = Expression(14, Add) +- expression 6 operands: lhs = Counter(5), rhs = Counter(6) +- expression 7 operands: lhs = Counter(1), rhs = Expression(14, Add) +- expression 8 operands: lhs = Counter(5), rhs = Counter(6) +- expression 9 operands: lhs = Counter(1), rhs = Expression(13, Add) +- expression 10 operands: lhs = Expression(14, Add), rhs = Counter(7) +- expression 11 operands: lhs = Counter(5), rhs = Counter(6) +- expression 12 operands: lhs = Counter(1), rhs = Expression(13, Add) +- expression 13 operands: lhs = Expression(14, Add), rhs = Counter(7) +- expression 14 operands: lhs = Counter(5), rhs = Counter(6) +Number of file 0 mappings: 19 +- Code(Counter(0)) at (prev + 36, 1) to (start + 1, 16) +- Code(Counter(1)) at (prev + 4, 9) to (start + 0, 10) +- Code(Counter(1)) at (prev + 0, 13) to (start + 0, 18) +- Branch { true: Counter(2), false: Expression(0, Sub) } at (prev + 0, 13) to (start + 0, 18) + true = c2 + false = (c1 - c2) +- Code(Counter(2)) at (prev + 0, 22) to (start + 0, 27) +- Branch { true: Counter(3), false: Expression(1, Sub) } at (prev + 0, 22) to (start + 0, 27) + true = c3 + false = (c2 - c3) +- Code(Counter(3)) at (prev + 0, 31) to (start + 0, 36) +- Branch { true: Counter(4), false: Expression(2, Sub) } at (prev + 0, 31) to (start + 0, 36) + true = c4 + false = (c3 - c4) +- Code(Counter(4)) at (prev + 0, 40) to (start + 0, 45) +- Code(Counter(1)) at (prev + 1, 5) to (start + 0, 17) +- Code(Counter(1)) at (prev + 3, 9) to (start + 0, 10) +- Code(Counter(1)) at (prev + 0, 13) to (start + 0, 18) +- Branch { true: Counter(5), false: Expression(4, Sub) } at (prev + 0, 13) to (start + 0, 18) + true = c5 + false = (c1 - c5) +- Code(Expression(4, Sub)) at (prev + 0, 22) to (start + 0, 27) + = (c1 - c5) +- Branch { true: Counter(6), false: Expression(7, Sub) } at (prev + 0, 22) to (start + 0, 27) + true = c6 + false = (c1 - (c5 + c6)) +- Code(Expression(7, Sub)) at (prev + 0, 31) to (start + 0, 36) + = (c1 - (c5 + c6)) +- Branch { true: Counter(7), false: Expression(12, Sub) } at (prev + 0, 31) to (start + 0, 36) + true = c7 + false = (c1 - ((c5 + c6) + c7)) +- Code(Expression(12, Sub)) at (prev + 0, 40) to (start + 0, 45) + = (c1 - ((c5 + c6) + c7)) +- Code(Counter(1)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c7 + +Function name: lazy_boolean::nested_mixed +Raw bytes (137): 0x[01, 01, 0d, 05, 09, 05, 1f, 09, 0d, 09, 0d, 1f, 11, 09, 0d, 1f, 11, 09, 0d, 05, 15, 15, 19, 05, 19, 05, 33, 19, 1d, 13, 01, 31, 01, 01, 10, 05, 04, 09, 00, 0a, 05, 00, 0e, 00, 13, 20, 09, 02, 00, 0e, 00, 13, 02, 00, 17, 00, 1d, 20, 0d, 06, 00, 17, 00, 1d, 1f, 00, 23, 00, 28, 20, 11, 1a, 00, 23, 00, 28, 1a, 00, 2c, 00, 33, 05, 01, 05, 00, 11, 05, 03, 09, 00, 0a, 05, 00, 0e, 00, 13, 20, 15, 22, 00, 0e, 00, 13, 15, 00, 17, 00, 1c, 20, 19, 26, 00, 17, 00, 1c, 2a, 00, 22, 00, 28, 20, 1d, 2e, 00, 22, 00, 28, 1d, 00, 2c, 00, 33, 05, 01, 05, 01, 02] +Number of files: 1 +- file 0 => global file 1 +Number of expressions: 13 +- expression 0 operands: lhs = Counter(1), rhs = Counter(2) - expression 1 operands: lhs = Counter(1), rhs = Expression(7, Add) - expression 2 operands: lhs = Counter(2), rhs = Counter(3) - expression 3 operands: lhs = Counter(2), rhs = Counter(3) @@ -121,13 +103,11 @@ Number of expressions: 15 - expression 5 operands: lhs = Counter(2), rhs = Counter(3) - expression 6 operands: lhs = Expression(7, Add), rhs = Counter(4) - expression 7 operands: lhs = Counter(2), rhs = Counter(3) -- expression 8 operands: lhs = Expression(14, Add), rhs = Counter(8) -- expression 9 operands: lhs = Counter(6), rhs = Counter(7) -- expression 10 operands: lhs = Counter(1), rhs = Counter(5) -- expression 11 operands: lhs = Counter(5), rhs = Counter(6) -- expression 12 operands: lhs = Counter(1), rhs = Counter(6) -- expression 13 operands: lhs = Expression(14, Add), rhs = Counter(8) -- expression 14 operands: lhs = Counter(6), rhs = Counter(7) +- expression 8 operands: lhs = Counter(1), rhs = Counter(5) +- expression 9 operands: lhs = Counter(5), rhs = Counter(6) +- expression 10 operands: lhs = Counter(1), rhs = Counter(6) +- expression 11 operands: lhs = Counter(1), rhs = Expression(12, Add) +- expression 12 operands: lhs = Counter(6), rhs = Counter(7) Number of file 0 mappings: 19 - Code(Counter(0)) at (prev + 49, 1) to (start + 1, 16) - Code(Counter(1)) at (prev + 4, 9) to (start + 0, 10) @@ -148,23 +128,21 @@ Number of file 0 mappings: 19 - Code(Expression(6, Sub)) at (prev + 0, 44) to (start + 0, 51) = ((c2 + c3) - c4) - Code(Counter(1)) at (prev + 1, 5) to (start + 0, 17) -- Code(Expression(13, Add)) at (prev + 3, 9) to (start + 0, 10) - = ((c6 + c7) + c8) +- Code(Counter(1)) at (prev + 3, 9) to (start + 0, 10) - Code(Counter(1)) at (prev + 0, 14) to (start + 0, 19) -- Branch { true: Counter(5), false: Expression(10, Sub) } at (prev + 0, 14) to (start + 0, 19) +- Branch { true: Counter(5), false: Expression(8, Sub) } at (prev + 0, 14) to (start + 0, 19) true = c5 false = (c1 - c5) - Code(Counter(5)) at (prev + 0, 23) to (start + 0, 28) -- Branch { true: Counter(6), false: Expression(11, Sub) } at (prev + 0, 23) to (start + 0, 28) +- Branch { true: Counter(6), false: Expression(9, Sub) } at (prev + 0, 23) to (start + 0, 28) true = c6 false = (c5 - c6) -- Code(Expression(12, Sub)) at (prev + 0, 34) to (start + 0, 40) +- Code(Expression(10, Sub)) at (prev + 0, 34) to (start + 0, 40) = (c1 - c6) -- Branch { true: Counter(7), false: Counter(8) } at (prev + 0, 34) to (start + 0, 40) +- Branch { true: Counter(7), false: Expression(11, Sub) } at (prev + 0, 34) to (start + 0, 40) true = c7 - false = c8 + false = (c1 - (c6 + c7)) - Code(Counter(7)) at (prev + 0, 44) to (start + 0, 51) -- Code(Expression(13, Add)) at (prev + 1, 5) to (start + 1, 2) - = ((c6 + c7) + c8) -Highest counter ID seen: c8 +- Code(Counter(1)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c7 diff --git a/tests/coverage/branch/match-arms.cov-map b/tests/coverage/branch/match-arms.cov-map index a93df9814ee..53d0a4edbd0 100644 --- a/tests/coverage/branch/match-arms.cov-map +++ b/tests/coverage/branch/match-arms.cov-map @@ -1,40 +1,45 @@ Function name: match_arms::guards -Raw bytes (88): 0x[01, 01, 08, 07, 00, 0b, 11, 0f, 0d, 05, 09, 17, 25, 1b, 21, 1f, 1d, 03, 19, 0c, 01, 30, 01, 01, 10, 29, 03, 0b, 00, 10, 19, 01, 11, 00, 29, 20, 19, 05, 00, 17, 00, 1b, 1d, 01, 11, 00, 29, 20, 1d, 09, 00, 17, 00, 1b, 21, 01, 11, 00, 29, 20, 21, 0d, 00, 17, 00, 1b, 25, 01, 11, 00, 29, 20, 25, 11, 00, 17, 00, 1b, 03, 01, 0e, 00, 18, 13, 03, 05, 01, 02] +Raw bytes (98): 0x[01, 01, 0d, 11, 19, 27, 19, 2b, 00, 2f, 11, 33, 0d, 05, 09, 1f, 25, 23, 21, 27, 1d, 2b, 00, 2f, 11, 33, 0d, 05, 09, 0c, 01, 30, 01, 01, 10, 11, 03, 0b, 00, 10, 1d, 01, 11, 00, 29, 20, 1d, 05, 00, 17, 00, 1b, 21, 01, 11, 00, 29, 20, 21, 09, 00, 17, 00, 1b, 25, 01, 11, 00, 29, 20, 25, 0d, 00, 17, 00, 1b, 19, 01, 11, 00, 29, 20, 19, 02, 00, 17, 00, 1b, 06, 01, 0e, 00, 18, 1b, 03, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 8 -- expression 0 operands: lhs = Expression(1, Add), rhs = Zero -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(4) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(3) -- expression 3 operands: lhs = Counter(1), rhs = Counter(2) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(9) -- expression 5 operands: lhs = Expression(6, Add), rhs = Counter(8) -- expression 6 operands: lhs = Expression(7, Add), rhs = Counter(7) -- expression 7 operands: lhs = Expression(0, Add), rhs = Counter(6) +Number of expressions: 13 +- expression 0 operands: lhs = Counter(4), rhs = Counter(6) +- expression 1 operands: lhs = Expression(9, Add), rhs = Counter(6) +- expression 2 operands: lhs = Expression(10, Add), rhs = Zero +- expression 3 operands: lhs = Expression(11, Add), rhs = Counter(4) +- expression 4 operands: lhs = Expression(12, Add), rhs = Counter(3) +- expression 5 operands: lhs = Counter(1), rhs = Counter(2) +- expression 6 operands: lhs = Expression(7, Add), rhs = Counter(9) +- expression 7 operands: lhs = Expression(8, Add), rhs = Counter(8) +- expression 8 operands: lhs = Expression(9, Add), rhs = Counter(7) +- expression 9 operands: lhs = Expression(10, Add), rhs = Zero +- expression 10 operands: lhs = Expression(11, Add), rhs = Counter(4) +- expression 11 operands: lhs = Expression(12, Add), rhs = Counter(3) +- expression 12 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 12 - Code(Counter(0)) at (prev + 48, 1) to (start + 1, 16) -- Code(Counter(10)) at (prev + 3, 11) to (start + 0, 16) -- Code(Counter(6)) at (prev + 1, 17) to (start + 0, 41) -- Branch { true: Counter(6), false: Counter(1) } at (prev + 0, 23) to (start + 0, 27) - true = c6 - false = c1 +- Code(Counter(4)) at (prev + 3, 11) to (start + 0, 16) - Code(Counter(7)) at (prev + 1, 17) to (start + 0, 41) -- Branch { true: Counter(7), false: Counter(2) } at (prev + 0, 23) to (start + 0, 27) +- Branch { true: Counter(7), false: Counter(1) } at (prev + 0, 23) to (start + 0, 27) true = c7 - false = c2 + false = c1 - Code(Counter(8)) at (prev + 1, 17) to (start + 0, 41) -- Branch { true: Counter(8), false: Counter(3) } at (prev + 0, 23) to (start + 0, 27) +- Branch { true: Counter(8), false: Counter(2) } at (prev + 0, 23) to (start + 0, 27) true = c8 - false = c3 + false = c2 - Code(Counter(9)) at (prev + 1, 17) to (start + 0, 41) -- Branch { true: Counter(9), false: Counter(4) } at (prev + 0, 23) to (start + 0, 27) +- Branch { true: Counter(9), false: Counter(3) } at (prev + 0, 23) to (start + 0, 27) true = c9 - false = c4 -- Code(Expression(0, Add)) at (prev + 1, 14) to (start + 0, 24) - = ((((c1 + c2) + c3) + c4) + Zero) -- Code(Expression(4, Add)) at (prev + 3, 5) to (start + 1, 2) - = ((((((((c1 + c2) + c3) + c4) + Zero) + c6) + c7) + c8) + c9) -Highest counter ID seen: c10 + false = c3 +- Code(Counter(6)) at (prev + 1, 17) to (start + 0, 41) +- Branch { true: Counter(6), false: Expression(0, Sub) } at (prev + 0, 23) to (start + 0, 27) + true = c6 + false = (c4 - c6) +- Code(Expression(1, Sub)) at (prev + 1, 14) to (start + 0, 24) + = (((((c1 + c2) + c3) + c4) + Zero) - c6) +- Code(Expression(6, Add)) at (prev + 3, 5) to (start + 1, 2) + = (((((((c1 + c2) + c3) + c4) + Zero) + c7) + c8) + c9) +Highest counter ID seen: c9 Function name: match_arms::match_arms Raw bytes (45): 0x[01, 01, 03, 05, 07, 0b, 11, 09, 0d, 07, 01, 18, 01, 01, 10, 05, 03, 0b, 00, 10, 09, 01, 11, 00, 21, 0d, 01, 11, 00, 21, 11, 01, 11, 00, 21, 02, 01, 11, 00, 21, 05, 03, 05, 01, 02] diff --git a/tests/coverage/branch/while.cov-map b/tests/coverage/branch/while.cov-map index 305f6bc74d8..5eb08a42803 100644 --- a/tests/coverage/branch/while.cov-map +++ b/tests/coverage/branch/while.cov-map @@ -35,14 +35,14 @@ Number of file 0 mappings: 6 Highest counter ID seen: c2 Function name: while::while_op_and -Raw bytes (56): 0x[01, 01, 04, 05, 09, 03, 0d, 03, 0d, 0d, 11, 08, 01, 1e, 01, 01, 10, 05, 03, 09, 01, 12, 03, 02, 0b, 00, 10, 20, 0a, 0d, 00, 0b, 00, 10, 0a, 00, 14, 00, 19, 20, 09, 11, 00, 14, 00, 19, 09, 00, 1a, 03, 06, 0f, 04, 01, 00, 02] +Raw bytes (56): 0x[01, 01, 04, 05, 09, 03, 0d, 03, 0d, 05, 0d, 08, 01, 1e, 01, 01, 10, 05, 03, 09, 01, 12, 03, 02, 0b, 00, 10, 20, 0a, 0d, 00, 0b, 00, 10, 0a, 00, 14, 00, 19, 20, 09, 0e, 00, 14, 00, 19, 09, 00, 1a, 03, 06, 05, 04, 01, 00, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 4 - expression 0 operands: lhs = Counter(1), rhs = Counter(2) - expression 1 operands: lhs = Expression(0, Add), rhs = Counter(3) - expression 2 operands: lhs = Expression(0, Add), rhs = Counter(3) -- expression 3 operands: lhs = Counter(3), rhs = Counter(4) +- expression 3 operands: lhs = Counter(1), rhs = Counter(3) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 30, 1) to (start + 1, 16) - Code(Counter(1)) at (prev + 3, 9) to (start + 1, 18) @@ -53,13 +53,12 @@ Number of file 0 mappings: 8 false = c3 - Code(Expression(2, Sub)) at (prev + 0, 20) to (start + 0, 25) = ((c1 + c2) - c3) -- Branch { true: Counter(2), false: Counter(4) } at (prev + 0, 20) to (start + 0, 25) +- Branch { true: Counter(2), false: Expression(3, Sub) } at (prev + 0, 20) to (start + 0, 25) true = c2 - false = c4 + false = (c1 - c3) - Code(Counter(2)) at (prev + 0, 26) to (start + 3, 6) -- Code(Expression(3, Add)) at (prev + 4, 1) to (start + 0, 2) - = (c3 + c4) -Highest counter ID seen: c4 +- Code(Counter(1)) at (prev + 4, 1) to (start + 0, 2) +Highest counter ID seen: c3 Function name: while::while_op_or Raw bytes (58): 0x[01, 01, 05, 07, 0d, 05, 09, 05, 0d, 05, 0d, 09, 0d, 08, 01, 29, 01, 01, 10, 05, 03, 09, 01, 12, 03, 02, 0b, 00, 10, 20, 09, 0f, 00, 0b, 00, 10, 0f, 00, 14, 00, 19, 20, 0d, 05, 00, 14, 00, 19, 13, 00, 1a, 03, 06, 05, 04, 01, 00, 02] diff --git a/tests/coverage/closure_macro.cov-map b/tests/coverage/closure_macro.cov-map index aedb924eca8..653848dd6ff 100644 --- a/tests/coverage/closure_macro.cov-map +++ b/tests/coverage/closure_macro.cov-map @@ -25,20 +25,20 @@ Number of file 0 mappings: 6 Highest counter ID seen: c1 Function name: closure_macro::main::{closure#0} -Raw bytes (35): 0x[01, 01, 03, 01, 05, 0b, 0d, 05, 09, 05, 01, 10, 1c, 03, 21, 05, 04, 11, 01, 27, 02, 03, 11, 00, 16, 0d, 00, 17, 00, 1e, 07, 02, 09, 00, 0a] +Raw bytes (35): 0x[01, 01, 03, 01, 05, 01, 0b, 05, 09, 05, 01, 10, 1c, 03, 21, 05, 04, 11, 01, 27, 02, 03, 11, 00, 16, 06, 00, 17, 00, 1e, 01, 02, 09, 00, 0a] Number of files: 1 - file 0 => global file 1 Number of expressions: 3 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(3) +- expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 5 - Code(Counter(0)) at (prev + 16, 28) to (start + 3, 33) - Code(Counter(1)) at (prev + 4, 17) to (start + 1, 39) - Code(Expression(0, Sub)) at (prev + 3, 17) to (start + 0, 22) = (c0 - c1) -- Code(Counter(3)) at (prev + 0, 23) to (start + 0, 30) -- Code(Expression(1, Add)) at (prev + 2, 9) to (start + 0, 10) - = ((c1 + c2) + c3) -Highest counter ID seen: c3 +- Code(Expression(1, Sub)) at (prev + 0, 23) to (start + 0, 30) + = (c0 - (c1 + c2)) +- Code(Counter(0)) at (prev + 2, 9) to (start + 0, 10) +Highest counter ID seen: c1 diff --git a/tests/coverage/closure_macro_async.cov-map b/tests/coverage/closure_macro_async.cov-map index df4652ac9ce..1bd1460a147 100644 --- a/tests/coverage/closure_macro_async.cov-map +++ b/tests/coverage/closure_macro_async.cov-map @@ -34,20 +34,20 @@ Number of file 0 mappings: 6 Highest counter ID seen: c1 Function name: closure_macro_async::test::{closure#0}::{closure#0} -Raw bytes (35): 0x[01, 01, 03, 01, 05, 0b, 0d, 05, 09, 05, 01, 14, 1c, 03, 21, 05, 04, 11, 01, 27, 02, 03, 11, 00, 16, 0d, 00, 17, 00, 1e, 07, 02, 09, 00, 0a] +Raw bytes (35): 0x[01, 01, 03, 01, 05, 01, 0b, 05, 09, 05, 01, 14, 1c, 03, 21, 05, 04, 11, 01, 27, 02, 03, 11, 00, 16, 06, 00, 17, 00, 1e, 01, 02, 09, 00, 0a] Number of files: 1 - file 0 => global file 1 Number of expressions: 3 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(3) +- expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 5 - Code(Counter(0)) at (prev + 20, 28) to (start + 3, 33) - Code(Counter(1)) at (prev + 4, 17) to (start + 1, 39) - Code(Expression(0, Sub)) at (prev + 3, 17) to (start + 0, 22) = (c0 - c1) -- Code(Counter(3)) at (prev + 0, 23) to (start + 0, 30) -- Code(Expression(1, Add)) at (prev + 2, 9) to (start + 0, 10) - = ((c1 + c2) + c3) -Highest counter ID seen: c3 +- Code(Expression(1, Sub)) at (prev + 0, 23) to (start + 0, 30) + = (c0 - (c1 + c2)) +- Code(Counter(0)) at (prev + 2, 9) to (start + 0, 10) +Highest counter ID seen: c1 diff --git a/tests/coverage/condition/conditions.cov-map b/tests/coverage/condition/conditions.cov-map index 72f39b88c6a..417637f2d2e 100644 --- a/tests/coverage/condition/conditions.cov-map +++ b/tests/coverage/condition/conditions.cov-map @@ -1,120 +1,103 @@ Function name: conditions::assign_3_and_or -Raw bytes (65): 0x[01, 01, 05, 07, 11, 09, 0d, 01, 05, 05, 09, 01, 09, 09, 01, 1c, 01, 00, 2f, 03, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 0a, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 20, 09, 0e, 00, 12, 00, 13, 12, 00, 17, 00, 18, 20, 0d, 11, 00, 17, 00, 18, 03, 01, 05, 01, 02] +Raw bytes (65): 0x[01, 01, 05, 01, 05, 05, 09, 01, 09, 01, 13, 09, 0d, 09, 01, 1c, 01, 00, 2f, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 02, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 20, 09, 06, 00, 12, 00, 13, 0a, 00, 17, 00, 18, 20, 0d, 0e, 00, 17, 00, 18, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 5 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(4) -- expression 1 operands: lhs = Counter(2), rhs = Counter(3) -- expression 2 operands: lhs = Counter(0), rhs = Counter(1) -- expression 3 operands: lhs = Counter(1), rhs = Counter(2) -- expression 4 operands: lhs = Counter(0), rhs = Counter(2) +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(0), rhs = Counter(2) +- expression 3 operands: lhs = Counter(0), rhs = Expression(4, Add) +- expression 4 operands: lhs = Counter(2), rhs = Counter(3) Number of file 0 mappings: 9 - Code(Counter(0)) at (prev + 28, 1) to (start + 0, 47) -- Code(Expression(0, Add)) at (prev + 1, 9) to (start + 0, 10) - = ((c2 + c3) + c4) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) -- Branch { true: Counter(1), false: Expression(2, Sub) } at (prev + 0, 13) to (start + 0, 14) +- Branch { true: Counter(1), false: Expression(0, Sub) } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 18) to (start + 0, 19) -- Branch { true: Counter(2), false: Expression(3, Sub) } at (prev + 0, 18) to (start + 0, 19) +- Branch { true: Counter(2), false: Expression(1, Sub) } at (prev + 0, 18) to (start + 0, 19) true = c2 false = (c1 - c2) -- Code(Expression(4, Sub)) at (prev + 0, 23) to (start + 0, 24) +- Code(Expression(2, Sub)) at (prev + 0, 23) to (start + 0, 24) = (c0 - c2) -- Branch { true: Counter(3), false: Counter(4) } at (prev + 0, 23) to (start + 0, 24) +- Branch { true: Counter(3), false: Expression(3, Sub) } at (prev + 0, 23) to (start + 0, 24) true = c3 - false = c4 -- Code(Expression(0, Add)) at (prev + 1, 5) to (start + 1, 2) - = ((c2 + c3) + c4) -Highest counter ID seen: c4 + false = (c0 - (c2 + c3)) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c3 Function name: conditions::assign_3_or_and -Raw bytes (73): 0x[01, 01, 09, 07, 11, 0b, 0d, 05, 09, 01, 05, 01, 05, 01, 23, 05, 11, 01, 23, 05, 11, 09, 01, 17, 01, 00, 2f, 03, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 12, 00, 0d, 00, 0e, 12, 00, 12, 00, 13, 20, 1e, 11, 00, 12, 00, 13, 1e, 00, 17, 00, 18, 20, 09, 0d, 00, 17, 00, 18, 03, 01, 05, 01, 02] -Number of files: 1 -- file 0 => global file 1 -Number of expressions: 9 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(4) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(3) -- expression 2 operands: lhs = Counter(1), rhs = Counter(2) -- expression 3 operands: lhs = Counter(0), rhs = Counter(1) -- expression 4 operands: lhs = Counter(0), rhs = Counter(1) -- expression 5 operands: lhs = Counter(0), rhs = Expression(8, Add) -- expression 6 operands: lhs = Counter(1), rhs = Counter(4) -- expression 7 operands: lhs = Counter(0), rhs = Expression(8, Add) -- expression 8 operands: lhs = Counter(1), rhs = Counter(4) -Number of file 0 mappings: 9 -- Code(Counter(0)) at (prev + 23, 1) to (start + 0, 47) -- Code(Expression(0, Add)) at (prev + 1, 9) to (start + 0, 10) - = (((c1 + c2) + c3) + c4) -- Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) -- Branch { true: Counter(1), false: Expression(4, Sub) } at (prev + 0, 13) to (start + 0, 14) - true = c1 - false = (c0 - c1) -- Code(Expression(4, Sub)) at (prev + 0, 18) to (start + 0, 19) - = (c0 - c1) -- Branch { true: Expression(7, Sub), false: Counter(4) } at (prev + 0, 18) to (start + 0, 19) - true = (c0 - (c1 + c4)) - false = c4 -- Code(Expression(7, Sub)) at (prev + 0, 23) to (start + 0, 24) - = (c0 - (c1 + c4)) -- Branch { true: Counter(2), false: Counter(3) } at (prev + 0, 23) to (start + 0, 24) - true = c2 - false = c3 -- Code(Expression(0, Add)) at (prev + 1, 5) to (start + 1, 2) - = (((c1 + c2) + c3) + c4) -Highest counter ID seen: c4 - -Function name: conditions::assign_and -Raw bytes (51): 0x[01, 01, 04, 07, 05, 0b, 0d, 01, 09, 01, 05, 07, 01, 0d, 01, 00, 21, 02, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 0e, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 20, 09, 0d, 00, 12, 00, 13, 02, 01, 05, 01, 02] +Raw bytes (63): 0x[01, 01, 04, 01, 05, 01, 0b, 05, 09, 09, 0d, 09, 01, 17, 01, 00, 2f, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 02, 00, 0d, 00, 0e, 02, 00, 12, 00, 13, 20, 09, 06, 00, 12, 00, 13, 09, 00, 17, 00, 18, 20, 0d, 0e, 00, 17, 00, 18, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 4 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(3) -- expression 2 operands: lhs = Counter(0), rhs = Counter(2) -- expression 3 operands: lhs = Counter(0), rhs = Counter(1) +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) +- expression 2 operands: lhs = Counter(1), rhs = Counter(2) +- expression 3 operands: lhs = Counter(2), rhs = Counter(3) +Number of file 0 mappings: 9 +- Code(Counter(0)) at (prev + 23, 1) to (start + 0, 47) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) +- Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) +- Branch { true: Counter(1), false: Expression(0, Sub) } at (prev + 0, 13) to (start + 0, 14) + true = c1 + false = (c0 - c1) +- Code(Expression(0, Sub)) at (prev + 0, 18) to (start + 0, 19) + = (c0 - c1) +- Branch { true: Counter(2), false: Expression(1, Sub) } at (prev + 0, 18) to (start + 0, 19) + true = c2 + false = (c0 - (c1 + c2)) +- Code(Counter(2)) at (prev + 0, 23) to (start + 0, 24) +- Branch { true: Counter(3), false: Expression(3, Sub) } at (prev + 0, 23) to (start + 0, 24) + true = c3 + false = (c2 - c3) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c3 + +Function name: conditions::assign_and +Raw bytes (47): 0x[01, 01, 02, 01, 05, 05, 09, 07, 01, 0d, 01, 00, 21, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 02, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 20, 09, 06, 00, 12, 00, 13, 01, 01, 05, 01, 02] +Number of files: 1 +- file 0 => global file 1 +Number of expressions: 2 +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 7 - Code(Counter(0)) at (prev + 13, 1) to (start + 0, 33) -- Code(Expression(0, Sub)) at (prev + 1, 9) to (start + 0, 10) - = (((c0 + c2) + c3) - c1) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) -- Branch { true: Counter(1), false: Expression(3, Sub) } at (prev + 0, 13) to (start + 0, 14) +- Branch { true: Counter(1), false: Expression(0, Sub) } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 18) to (start + 0, 19) -- Branch { true: Counter(2), false: Counter(3) } at (prev + 0, 18) to (start + 0, 19) +- Branch { true: Counter(2), false: Expression(1, Sub) } at (prev + 0, 18) to (start + 0, 19) true = c2 - false = c3 -- Code(Expression(0, Sub)) at (prev + 1, 5) to (start + 1, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 + false = (c1 - c2) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c2 Function name: conditions::assign_or -Raw bytes (51): 0x[01, 01, 04, 07, 0d, 05, 09, 01, 05, 01, 05, 07, 01, 12, 01, 00, 20, 03, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 0e, 00, 0d, 00, 0e, 0e, 00, 12, 00, 13, 20, 09, 0d, 00, 12, 00, 13, 03, 01, 05, 01, 02] +Raw bytes (49): 0x[01, 01, 03, 01, 05, 01, 0b, 05, 09, 07, 01, 12, 01, 00, 20, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 20, 05, 02, 00, 0d, 00, 0e, 02, 00, 12, 00, 13, 20, 09, 06, 00, 12, 00, 13, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(3) -- expression 1 operands: lhs = Counter(1), rhs = Counter(2) -- expression 2 operands: lhs = Counter(0), rhs = Counter(1) -- expression 3 operands: lhs = Counter(0), rhs = Counter(1) +Number of expressions: 3 +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) +- expression 2 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 7 - Code(Counter(0)) at (prev + 18, 1) to (start + 0, 32) -- Code(Expression(0, Add)) at (prev + 1, 9) to (start + 0, 10) - = ((c1 + c2) + c3) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) -- Branch { true: Counter(1), false: Expression(3, Sub) } at (prev + 0, 13) to (start + 0, 14) +- Branch { true: Counter(1), false: Expression(0, Sub) } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) -- Code(Expression(3, Sub)) at (prev + 0, 18) to (start + 0, 19) +- Code(Expression(0, Sub)) at (prev + 0, 18) to (start + 0, 19) = (c0 - c1) -- Branch { true: Counter(2), false: Counter(3) } at (prev + 0, 18) to (start + 0, 19) +- Branch { true: Counter(2), false: Expression(1, Sub) } at (prev + 0, 18) to (start + 0, 19) true = c2 - false = c3 -- Code(Expression(0, Add)) at (prev + 1, 5) to (start + 1, 2) - = ((c1 + c2) + c3) -Highest counter ID seen: c3 + false = (c0 - (c1 + c2)) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c2 Function name: conditions::foo Raw bytes (9): 0x[01, 01, 00, 01, 01, 21, 01, 02, 02] @@ -126,26 +109,23 @@ Number of file 0 mappings: 1 Highest counter ID seen: c0 Function name: conditions::func_call -Raw bytes (41): 0x[01, 01, 04, 01, 05, 0b, 05, 0f, 0d, 01, 09, 05, 01, 25, 01, 01, 0a, 20, 05, 02, 01, 09, 00, 0a, 05, 00, 0e, 00, 0f, 20, 09, 0d, 00, 0e, 00, 0f, 06, 01, 01, 00, 02] +Raw bytes (37): 0x[01, 01, 02, 01, 05, 05, 09, 05, 01, 25, 01, 01, 0a, 20, 05, 02, 01, 09, 00, 0a, 05, 00, 0e, 00, 0f, 20, 09, 06, 00, 0e, 00, 0f, 01, 01, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 +Number of expressions: 2 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(3) -- expression 3 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 5 - Code(Counter(0)) at (prev + 37, 1) to (start + 1, 10) - Branch { true: Counter(1), false: Expression(0, Sub) } at (prev + 1, 9) to (start + 0, 10) true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 14) to (start + 0, 15) -- Branch { true: Counter(2), false: Counter(3) } at (prev + 0, 14) to (start + 0, 15) +- Branch { true: Counter(2), false: Expression(1, Sub) } at (prev + 0, 14) to (start + 0, 15) true = c2 - false = c3 -- Code(Expression(1, Sub)) at (prev + 1, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 + false = (c1 - c2) +- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2) +Highest counter ID seen: c2 Function name: conditions::simple_assign Raw bytes (9): 0x[01, 01, 00, 01, 01, 08, 01, 03, 02] diff --git a/tests/coverage/conditions.cov-map b/tests/coverage/conditions.cov-map index 21b2ec9a19e..549b8bb0a20 100644 --- a/tests/coverage/conditions.cov-map +++ b/tests/coverage/conditions.cov-map @@ -1,294 +1,192 @@ Function name: conditions::main -Raw bytes (873): 0x[01, 01, b2, 01, 07, 19, 0b, 15, 0f, 11, 09, 0d, 01, 09, 8d, 01, 0d, 8d, 01, 33, 0d, 11, 33, 15, 0d, 11, 2f, 19, 33, 15, 0d, 11, 01, c7, 05, 09, 8d, 01, 03, 21, 03, 47, 21, 89, 01, 03, 4f, db, 03, 89, 01, 21, 25, 03, 5b, d7, 03, 89, 01, db, 03, 29, 21, 25, 77, 2d, 25, 29, 73, 31, 77, 2d, 25, 29, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, 35, 3d, 35, 93, 01, 3d, 85, 01, 35, 9b, 01, af, 01, 85, 01, 3d, 41, 35, a7, 01, ab, 01, 85, 01, af, 01, 45, 3d, 41, c3, 01, 49, 41, 45, bf, 01, 4d, c3, 01, 49, 41, 45, bb, 03, 35, bf, 03, 4d, c3, 03, 49, c7, 03, 45, cb, 03, 41, cf, 03, 3d, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, f3, 04, 65, f7, 04, 61, fb, 04, 5d, 55, 59, bb, 03, 35, bf, 03, 4d, c3, 03, 49, c7, 03, 45, cb, 03, 41, cf, 03, 3d, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, bb, 03, eb, 03, bf, 03, 4d, c3, 03, 49, c7, 03, 45, cb, 03, 41, cf, 03, 3d, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, 35, 55, bb, 03, fb, 02, bf, 03, 4d, c3, 03, 49, c7, 03, 45, cb, 03, 41, cf, 03, 3d, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, eb, 03, 81, 01, 35, 55, bb, 03, ab, 03, bf, 03, 4d, c3, 03, 49, c7, 03, 45, cb, 03, 41, cf, 03, 3d, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, e7, 03, 81, 01, eb, 03, 59, 35, 55, bb, 03, df, 03, bf, 03, 4d, c3, 03, 49, c7, 03, 45, cb, 03, 41, cf, 03, 3d, d3, 03, 31, d7, 03, 2d, db, 03, 29, 21, 25, e3, 03, 81, 01, e7, 03, 5d, eb, 03, 59, 35, 55, ff, 03, 61, 59, 5d, fb, 03, 65, ff, 03, 61, 59, 5d, 87, 04, 79, 83, 05, 75, 87, 05, 71, 69, 6d, f3, 04, 65, f7, 04, 61, fb, 04, 5d, 55, 59, ef, 04, 69, f3, 04, 65, f7, 04, 61, fb, 04, 5d, 55, 59, ef, 04, cb, 04, f3, 04, 65, f7, 04, 61, fb, 04, 5d, 55, 59, 69, 7d, ef, 04, e3, 04, f3, 04, 65, f7, 04, 61, fb, 04, 5d, 55, 59, 87, 05, 7d, 69, 6d, ef, 04, ff, 04, f3, 04, 65, f7, 04, 61, fb, 04, 5d, 55, 59, 83, 05, 7d, 87, 05, 71, 69, 6d, 9b, 05, 75, 6d, 71, 97, 05, 79, 9b, 05, 75, 6d, 71, a3, 05, c7, 05, a7, 05, 89, 01, ab, 05, 85, 01, af, 05, 81, 01, b3, 05, 7d, b7, 05, 79, bb, 05, 75, bf, 05, 71, c3, 05, 6d, 01, 69, 09, 8d, 01, 44, 01, 03, 01, 02, 0c, 05, 02, 0d, 02, 06, 00, 02, 05, 00, 06, 03, 03, 09, 00, 0a, 01, 00, 10, 00, 1d, 09, 01, 09, 01, 0a, 12, 02, 0f, 00, 1c, 8d, 01, 01, 0c, 00, 19, 16, 00, 1d, 00, 2a, 1a, 00, 2e, 00, 3c, 2f, 00, 3d, 02, 0a, 19, 02, 09, 00, 0a, 2b, 01, 09, 01, 12, 36, 03, 09, 00, 0f, 03, 03, 09, 01, 0c, 1d, 01, 0d, 02, 06, 00, 02, 05, 00, 06, 03, 02, 08, 00, 15, 21, 00, 16, 02, 06, 3e, 02, 0f, 00, 1c, 42, 01, 0c, 00, 19, 4a, 00, 1d, 00, 2a, 56, 00, 2e, 00, 3c, 73, 00, 3d, 02, 0a, 31, 02, 09, 00, 0a, 6f, 01, 09, 00, 17, 89, 01, 02, 09, 00, 0f, cf, 03, 03, 08, 00, 0c, 35, 01, 0d, 01, 10, 39, 01, 11, 02, 0a, 00, 02, 09, 00, 0a, 35, 02, 0c, 00, 19, 3d, 00, 1a, 02, 0a, 8a, 01, 04, 11, 00, 1e, 8e, 01, 01, 10, 00, 1d, 96, 01, 00, 21, 00, 2e, a2, 01, 00, 32, 00, 40, bf, 01, 00, 41, 02, 0e, 4d, 02, 0d, 00, 0e, bb, 01, 01, 0d, 00, 1b, 85, 01, 02, 0d, 00, 13, 00, 02, 05, 00, 06, fe, 01, 02, 09, 01, 0c, 51, 01, 0d, 02, 06, 00, 02, 05, 00, 06, ef, 04, 02, 09, 00, 0a, fe, 01, 00, 10, 00, 1d, 55, 00, 1e, 02, 06, a6, 02, 02, 0f, 00, 1c, d2, 02, 01, 0c, 00, 19, 82, 03, 00, 1d, 00, 2a, b6, 03, 00, 2e, 00, 3c, fb, 03, 00, 3d, 02, 0a, 65, 02, 09, 00, 0a, f7, 03, 01, 09, 00, 17, 81, 01, 02, 0d, 02, 0f, 83, 04, 05, 09, 00, 0a, ef, 04, 00, 10, 00, 1d, 69, 00, 1e, 02, 06, a2, 04, 02, 0f, 00, 1c, b6, 04, 01, 0c, 00, 19, ce, 04, 00, 1d, 00, 2a, ea, 04, 00, 2e, 00, 3c, 97, 05, 00, 3d, 02, 0a, 79, 02, 09, 00, 0a, 93, 05, 01, 09, 00, 17, 7d, 02, 09, 00, 0f, 9e, 05, 02, 01, 00, 02] +Raw bytes (545): 0x[01, 01, 4d, 09, 0d, 01, 09, 0d, 71, 0d, 27, 71, 75, 27, 79, 71, 75, 0d, 23, 27, 79, 71, 75, 01, 03, 03, 15, 19, 65, 19, 4f, 65, 69, 4f, 6d, 65, 69, 19, 4b, 4f, 6d, 65, 69, 03, ef, 01, 15, 19, 15, 19, 1d, 25, 29, 59, 29, 7f, 59, 5d, 7f, 61, 59, 5d, 29, 7b, 7f, 61, 59, 5d, 1d, 87, 01, 25, 29, e7, 01, 1d, eb, 01, 29, ef, 01, 25, 15, 19, 31, 35, e7, 01, 1d, eb, 01, 29, ef, 01, 25, 15, 19, e7, 01, f7, 01, eb, 01, 29, ef, 01, 25, 15, 19, 1d, 31, 35, 4d, 35, df, 01, 4d, 51, df, 01, 55, 4d, 51, 35, db, 01, df, 01, 55, 4d, 51, e7, 01, f3, 01, eb, 01, 29, ef, 01, 25, 15, 19, f7, 01, 35, 1d, 31, 39, 3d, 31, 35, af, 02, 39, 31, 35, 3d, 41, 3d, a7, 02, 41, 45, a7, 02, 49, 41, 45, 3d, a3, 02, a7, 02, 49, 41, 45, af, 02, b3, 02, 31, 35, 39, 3d, 44, 01, 03, 01, 02, 0c, 05, 02, 0d, 02, 06, 00, 02, 05, 00, 06, 03, 03, 09, 00, 0a, 01, 00, 10, 00, 1d, 09, 01, 09, 01, 0a, 06, 02, 0f, 00, 1c, 0d, 01, 0c, 00, 19, 0a, 00, 1d, 00, 2a, 0e, 00, 2e, 00, 3c, 23, 00, 3d, 02, 0a, 1e, 02, 09, 00, 0a, 0d, 01, 09, 01, 12, 2a, 03, 09, 00, 0f, 03, 03, 09, 01, 0c, 11, 01, 0d, 02, 06, 00, 02, 05, 00, 06, 03, 02, 08, 00, 15, 15, 00, 16, 02, 06, 2e, 02, 0f, 00, 1c, 19, 01, 0c, 00, 19, 32, 00, 1d, 00, 2a, 36, 00, 2e, 00, 3c, 4b, 00, 3d, 02, 0a, 46, 02, 09, 00, 0a, 19, 01, 09, 00, 17, 52, 02, 09, 00, 0f, ef, 01, 03, 08, 00, 0c, 1d, 01, 0d, 01, 10, 21, 01, 11, 02, 0a, 00, 02, 09, 00, 0a, 1d, 02, 0c, 00, 19, 25, 00, 1a, 02, 0a, 5e, 04, 11, 00, 1e, 29, 01, 10, 00, 1d, 62, 00, 21, 00, 2e, 66, 00, 32, 00, 40, 7b, 00, 41, 02, 0e, 76, 02, 0d, 00, 0e, 29, 01, 0d, 00, 1b, 82, 01, 02, 0d, 00, 13, 00, 02, 05, 00, 06, 9e, 01, 02, 09, 01, 0c, 2d, 01, 0d, 02, 06, 00, 02, 05, 00, 06, af, 02, 02, 09, 00, 0a, 9e, 01, 00, 10, 00, 1d, 31, 00, 1e, 02, 06, ae, 01, 02, 0f, 00, 1c, 35, 01, 0c, 00, 19, c2, 01, 00, 1d, 00, 2a, c6, 01, 00, 2e, 00, 3c, db, 01, 00, 3d, 02, 0a, d6, 01, 02, 09, 00, 0a, 35, 01, 09, 00, 17, e2, 01, 02, 0d, 02, 0f, b3, 02, 05, 09, 00, 0a, af, 02, 00, 10, 00, 1d, 39, 00, 1e, 02, 06, 82, 02, 02, 0f, 00, 1c, 3d, 01, 0c, 00, 19, 8a, 02, 00, 1d, 00, 2a, 8e, 02, 00, 2e, 00, 3c, a3, 02, 00, 3d, 02, 0a, 9e, 02, 02, 09, 00, 0a, 3d, 01, 09, 00, 17, aa, 02, 02, 09, 00, 0f, 01, 02, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 178 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(6) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(5) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(4) -- expression 3 operands: lhs = Counter(2), rhs = Counter(3) -- expression 4 operands: lhs = Counter(0), rhs = Counter(2) -- expression 5 operands: lhs = Counter(35), rhs = Counter(3) -- expression 6 operands: lhs = Counter(35), rhs = Expression(12, Add) -- expression 7 operands: lhs = Counter(3), rhs = Counter(4) -- expression 8 operands: lhs = Expression(12, Add), rhs = Counter(5) -- expression 9 operands: lhs = Counter(3), rhs = Counter(4) -- expression 10 operands: lhs = Expression(11, Add), rhs = Counter(6) -- expression 11 operands: lhs = Expression(12, Add), rhs = Counter(5) -- expression 12 operands: lhs = Counter(3), rhs = Counter(4) -- expression 13 operands: lhs = Counter(0), rhs = Expression(177, Add) -- expression 14 operands: lhs = Counter(2), rhs = Counter(35) -- expression 15 operands: lhs = Expression(0, Add), rhs = Counter(8) -- expression 16 operands: lhs = Expression(0, Add), rhs = Expression(17, Add) -- expression 17 operands: lhs = Counter(8), rhs = Counter(34) -- expression 18 operands: lhs = Expression(0, Add), rhs = Expression(19, Add) -- expression 19 operands: lhs = Expression(118, Add), rhs = Counter(34) -- expression 20 operands: lhs = Counter(8), rhs = Counter(9) -- expression 21 operands: lhs = Expression(0, Add), rhs = Expression(22, Add) -- expression 22 operands: lhs = Expression(117, Add), rhs = Counter(34) -- expression 23 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 24 operands: lhs = Counter(8), rhs = Counter(9) -- expression 25 operands: lhs = Expression(29, Add), rhs = Counter(11) -- expression 26 operands: lhs = Counter(9), rhs = Counter(10) -- expression 27 operands: lhs = Expression(28, Add), rhs = Counter(12) -- expression 28 operands: lhs = Expression(29, Add), rhs = Counter(11) -- expression 29 operands: lhs = Counter(9), rhs = Counter(10) -- expression 30 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 31 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 32 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 33 operands: lhs = Counter(8), rhs = Counter(9) -- expression 34 operands: lhs = Counter(13), rhs = Counter(15) -- expression 35 operands: lhs = Counter(13), rhs = Expression(36, Add) -- expression 36 operands: lhs = Counter(15), rhs = Counter(33) -- expression 37 operands: lhs = Counter(13), rhs = Expression(38, Add) -- expression 38 operands: lhs = Expression(43, Add), rhs = Counter(33) -- expression 39 operands: lhs = Counter(15), rhs = Counter(16) -- expression 40 operands: lhs = Counter(13), rhs = Expression(41, Add) -- expression 41 operands: lhs = Expression(42, Add), rhs = Counter(33) -- expression 42 operands: lhs = Expression(43, Add), rhs = Counter(17) -- expression 43 operands: lhs = Counter(15), rhs = Counter(16) -- expression 44 operands: lhs = Expression(48, Add), rhs = Counter(18) -- expression 45 operands: lhs = Counter(16), rhs = Counter(17) -- expression 46 operands: lhs = Expression(47, Add), rhs = Counter(19) -- expression 47 operands: lhs = Expression(48, Add), rhs = Counter(18) -- expression 48 operands: lhs = Counter(16), rhs = Counter(17) -- expression 49 operands: lhs = Expression(110, Add), rhs = Counter(13) -- expression 50 operands: lhs = Expression(111, Add), rhs = Counter(19) -- expression 51 operands: lhs = Expression(112, Add), rhs = Counter(18) -- expression 52 operands: lhs = Expression(113, Add), rhs = Counter(17) -- expression 53 operands: lhs = Expression(114, Add), rhs = Counter(16) -- expression 54 operands: lhs = Expression(115, Add), rhs = Counter(15) -- expression 55 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 56 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 57 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 58 operands: lhs = Counter(8), rhs = Counter(9) -- expression 59 operands: lhs = Expression(156, Add), rhs = Counter(25) -- expression 60 operands: lhs = Expression(157, Add), rhs = Counter(24) -- expression 61 operands: lhs = Expression(158, Add), rhs = Counter(23) -- expression 62 operands: lhs = Counter(21), rhs = Counter(22) -- expression 63 operands: lhs = Expression(110, Add), rhs = Counter(13) -- expression 64 operands: lhs = Expression(111, Add), rhs = Counter(19) -- expression 65 operands: lhs = Expression(112, Add), rhs = Counter(18) -- expression 66 operands: lhs = Expression(113, Add), rhs = Counter(17) -- expression 67 operands: lhs = Expression(114, Add), rhs = Counter(16) -- expression 68 operands: lhs = Expression(115, Add), rhs = Counter(15) -- expression 69 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 70 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 71 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 72 operands: lhs = Counter(8), rhs = Counter(9) -- expression 73 operands: lhs = Expression(110, Add), rhs = Expression(122, Add) -- expression 74 operands: lhs = Expression(111, Add), rhs = Counter(19) -- expression 75 operands: lhs = Expression(112, Add), rhs = Counter(18) -- expression 76 operands: lhs = Expression(113, Add), rhs = Counter(17) -- expression 77 operands: lhs = Expression(114, Add), rhs = Counter(16) -- expression 78 operands: lhs = Expression(115, Add), rhs = Counter(15) -- expression 79 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 80 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 81 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 82 operands: lhs = Counter(8), rhs = Counter(9) -- expression 83 operands: lhs = Counter(13), rhs = Counter(21) -- expression 84 operands: lhs = Expression(110, Add), rhs = Expression(94, Add) -- expression 85 operands: lhs = Expression(111, Add), rhs = Counter(19) -- expression 86 operands: lhs = Expression(112, Add), rhs = Counter(18) -- expression 87 operands: lhs = Expression(113, Add), rhs = Counter(17) -- expression 88 operands: lhs = Expression(114, Add), rhs = Counter(16) -- expression 89 operands: lhs = Expression(115, Add), rhs = Counter(15) -- expression 90 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 91 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 92 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 93 operands: lhs = Counter(8), rhs = Counter(9) -- expression 94 operands: lhs = Expression(122, Add), rhs = Counter(32) -- expression 95 operands: lhs = Counter(13), rhs = Counter(21) -- expression 96 operands: lhs = Expression(110, Add), rhs = Expression(106, Add) -- expression 97 operands: lhs = Expression(111, Add), rhs = Counter(19) -- expression 98 operands: lhs = Expression(112, Add), rhs = Counter(18) -- expression 99 operands: lhs = Expression(113, Add), rhs = Counter(17) -- expression 100 operands: lhs = Expression(114, Add), rhs = Counter(16) -- expression 101 operands: lhs = Expression(115, Add), rhs = Counter(15) -- expression 102 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 103 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 104 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 105 operands: lhs = Counter(8), rhs = Counter(9) -- expression 106 operands: lhs = Expression(121, Add), rhs = Counter(32) -- expression 107 operands: lhs = Expression(122, Add), rhs = Counter(22) -- expression 108 operands: lhs = Counter(13), rhs = Counter(21) -- expression 109 operands: lhs = Expression(110, Add), rhs = Expression(119, Add) -- expression 110 operands: lhs = Expression(111, Add), rhs = Counter(19) -- expression 111 operands: lhs = Expression(112, Add), rhs = Counter(18) -- expression 112 operands: lhs = Expression(113, Add), rhs = Counter(17) -- expression 113 operands: lhs = Expression(114, Add), rhs = Counter(16) -- expression 114 operands: lhs = Expression(115, Add), rhs = Counter(15) -- expression 115 operands: lhs = Expression(116, Add), rhs = Counter(12) -- expression 116 operands: lhs = Expression(117, Add), rhs = Counter(11) -- expression 117 operands: lhs = Expression(118, Add), rhs = Counter(10) -- expression 118 operands: lhs = Counter(8), rhs = Counter(9) -- expression 119 operands: lhs = Expression(120, Add), rhs = Counter(32) -- expression 120 operands: lhs = Expression(121, Add), rhs = Counter(23) -- expression 121 operands: lhs = Expression(122, Add), rhs = Counter(22) -- expression 122 operands: lhs = Counter(13), rhs = Counter(21) -- expression 123 operands: lhs = Expression(127, Add), rhs = Counter(24) -- expression 124 operands: lhs = Counter(22), rhs = Counter(23) -- expression 125 operands: lhs = Expression(126, Add), rhs = Counter(25) -- expression 126 operands: lhs = Expression(127, Add), rhs = Counter(24) -- expression 127 operands: lhs = Counter(22), rhs = Counter(23) -- expression 128 operands: lhs = Expression(129, Add), rhs = Counter(30) -- expression 129 operands: lhs = Expression(160, Add), rhs = Counter(29) -- expression 130 operands: lhs = Expression(161, Add), rhs = Counter(28) -- expression 131 operands: lhs = Counter(26), rhs = Counter(27) -- expression 132 operands: lhs = Expression(156, Add), rhs = Counter(25) -- expression 133 operands: lhs = Expression(157, Add), rhs = Counter(24) -- expression 134 operands: lhs = Expression(158, Add), rhs = Counter(23) -- expression 135 operands: lhs = Counter(21), rhs = Counter(22) -- expression 136 operands: lhs = Expression(155, Add), rhs = Counter(26) -- expression 137 operands: lhs = Expression(156, Add), rhs = Counter(25) -- expression 138 operands: lhs = Expression(157, Add), rhs = Counter(24) -- expression 139 operands: lhs = Expression(158, Add), rhs = Counter(23) -- expression 140 operands: lhs = Counter(21), rhs = Counter(22) -- expression 141 operands: lhs = Expression(155, Add), rhs = Expression(146, Add) -- expression 142 operands: lhs = Expression(156, Add), rhs = Counter(25) -- expression 143 operands: lhs = Expression(157, Add), rhs = Counter(24) -- expression 144 operands: lhs = Expression(158, Add), rhs = Counter(23) -- expression 145 operands: lhs = Counter(21), rhs = Counter(22) -- expression 146 operands: lhs = Counter(26), rhs = Counter(31) -- expression 147 operands: lhs = Expression(155, Add), rhs = Expression(152, Add) -- expression 148 operands: lhs = Expression(156, Add), rhs = Counter(25) -- expression 149 operands: lhs = Expression(157, Add), rhs = Counter(24) -- expression 150 operands: lhs = Expression(158, Add), rhs = Counter(23) -- expression 151 operands: lhs = Counter(21), rhs = Counter(22) -- expression 152 operands: lhs = Expression(161, Add), rhs = Counter(31) -- expression 153 operands: lhs = Counter(26), rhs = Counter(27) -- expression 154 operands: lhs = Expression(155, Add), rhs = Expression(159, Add) -- expression 155 operands: lhs = Expression(156, Add), rhs = Counter(25) -- expression 156 operands: lhs = Expression(157, Add), rhs = Counter(24) -- expression 157 operands: lhs = Expression(158, Add), rhs = Counter(23) -- expression 158 operands: lhs = Counter(21), rhs = Counter(22) -- expression 159 operands: lhs = Expression(160, Add), rhs = Counter(31) -- expression 160 operands: lhs = Expression(161, Add), rhs = Counter(28) -- expression 161 operands: lhs = Counter(26), rhs = Counter(27) -- expression 162 operands: lhs = Expression(166, Add), rhs = Counter(29) -- expression 163 operands: lhs = Counter(27), rhs = Counter(28) -- expression 164 operands: lhs = Expression(165, Add), rhs = Counter(30) -- expression 165 operands: lhs = Expression(166, Add), rhs = Counter(29) -- expression 166 operands: lhs = Counter(27), rhs = Counter(28) -- expression 167 operands: lhs = Expression(168, Add), rhs = Expression(177, Add) -- expression 168 operands: lhs = Expression(169, Add), rhs = Counter(34) -- expression 169 operands: lhs = Expression(170, Add), rhs = Counter(33) -- expression 170 operands: lhs = Expression(171, Add), rhs = Counter(32) -- expression 171 operands: lhs = Expression(172, Add), rhs = Counter(31) -- expression 172 operands: lhs = Expression(173, Add), rhs = Counter(30) -- expression 173 operands: lhs = Expression(174, Add), rhs = Counter(29) -- expression 174 operands: lhs = Expression(175, Add), rhs = Counter(28) -- expression 175 operands: lhs = Expression(176, Add), rhs = Counter(27) -- expression 176 operands: lhs = Counter(0), rhs = Counter(26) -- expression 177 operands: lhs = Counter(2), rhs = Counter(35) +Number of expressions: 77 +- expression 0 operands: lhs = Counter(2), rhs = Counter(3) +- expression 1 operands: lhs = Counter(0), rhs = Counter(2) +- expression 2 operands: lhs = Counter(3), rhs = Counter(28) +- expression 3 operands: lhs = Counter(3), rhs = Expression(9, Add) +- expression 4 operands: lhs = Counter(28), rhs = Counter(29) +- expression 5 operands: lhs = Expression(9, Add), rhs = Counter(30) +- expression 6 operands: lhs = Counter(28), rhs = Counter(29) +- expression 7 operands: lhs = Counter(3), rhs = Expression(8, Add) +- expression 8 operands: lhs = Expression(9, Add), rhs = Counter(30) +- expression 9 operands: lhs = Counter(28), rhs = Counter(29) +- expression 10 operands: lhs = Counter(0), rhs = Expression(0, Add) +- expression 11 operands: lhs = Expression(0, Add), rhs = Counter(5) +- expression 12 operands: lhs = Counter(6), rhs = Counter(25) +- expression 13 operands: lhs = Counter(6), rhs = Expression(19, Add) +- expression 14 operands: lhs = Counter(25), rhs = Counter(26) +- expression 15 operands: lhs = Expression(19, Add), rhs = Counter(27) +- expression 16 operands: lhs = Counter(25), rhs = Counter(26) +- expression 17 operands: lhs = Counter(6), rhs = Expression(18, Add) +- expression 18 operands: lhs = Expression(19, Add), rhs = Counter(27) +- expression 19 operands: lhs = Counter(25), rhs = Counter(26) +- expression 20 operands: lhs = Expression(0, Add), rhs = Expression(59, Add) +- expression 21 operands: lhs = Counter(5), rhs = Counter(6) +- expression 22 operands: lhs = Counter(5), rhs = Counter(6) +- expression 23 operands: lhs = Counter(7), rhs = Counter(9) +- expression 24 operands: lhs = Counter(10), rhs = Counter(22) +- expression 25 operands: lhs = Counter(10), rhs = Expression(31, Add) +- expression 26 operands: lhs = Counter(22), rhs = Counter(23) +- expression 27 operands: lhs = Expression(31, Add), rhs = Counter(24) +- expression 28 operands: lhs = Counter(22), rhs = Counter(23) +- expression 29 operands: lhs = Counter(10), rhs = Expression(30, Add) +- expression 30 operands: lhs = Expression(31, Add), rhs = Counter(24) +- expression 31 operands: lhs = Counter(22), rhs = Counter(23) +- expression 32 operands: lhs = Counter(7), rhs = Expression(33, Add) +- expression 33 operands: lhs = Counter(9), rhs = Counter(10) +- expression 34 operands: lhs = Expression(57, Add), rhs = Counter(7) +- expression 35 operands: lhs = Expression(58, Add), rhs = Counter(10) +- expression 36 operands: lhs = Expression(59, Add), rhs = Counter(9) +- expression 37 operands: lhs = Counter(5), rhs = Counter(6) +- expression 38 operands: lhs = Counter(12), rhs = Counter(13) +- expression 39 operands: lhs = Expression(57, Add), rhs = Counter(7) +- expression 40 operands: lhs = Expression(58, Add), rhs = Counter(10) +- expression 41 operands: lhs = Expression(59, Add), rhs = Counter(9) +- expression 42 operands: lhs = Counter(5), rhs = Counter(6) +- expression 43 operands: lhs = Expression(57, Add), rhs = Expression(61, Add) +- expression 44 operands: lhs = Expression(58, Add), rhs = Counter(10) +- expression 45 operands: lhs = Expression(59, Add), rhs = Counter(9) +- expression 46 operands: lhs = Counter(5), rhs = Counter(6) +- expression 47 operands: lhs = Counter(7), rhs = Counter(12) +- expression 48 operands: lhs = Counter(13), rhs = Counter(19) +- expression 49 operands: lhs = Counter(13), rhs = Expression(55, Add) +- expression 50 operands: lhs = Counter(19), rhs = Counter(20) +- expression 51 operands: lhs = Expression(55, Add), rhs = Counter(21) +- expression 52 operands: lhs = Counter(19), rhs = Counter(20) +- expression 53 operands: lhs = Counter(13), rhs = Expression(54, Add) +- expression 54 operands: lhs = Expression(55, Add), rhs = Counter(21) +- expression 55 operands: lhs = Counter(19), rhs = Counter(20) +- expression 56 operands: lhs = Expression(57, Add), rhs = Expression(60, Add) +- expression 57 operands: lhs = Expression(58, Add), rhs = Counter(10) +- expression 58 operands: lhs = Expression(59, Add), rhs = Counter(9) +- expression 59 operands: lhs = Counter(5), rhs = Counter(6) +- expression 60 operands: lhs = Expression(61, Add), rhs = Counter(13) +- expression 61 operands: lhs = Counter(7), rhs = Counter(12) +- expression 62 operands: lhs = Counter(14), rhs = Counter(15) +- expression 63 operands: lhs = Counter(12), rhs = Counter(13) +- expression 64 operands: lhs = Expression(75, Add), rhs = Counter(14) +- expression 65 operands: lhs = Counter(12), rhs = Counter(13) +- expression 66 operands: lhs = Counter(15), rhs = Counter(16) +- expression 67 operands: lhs = Counter(15), rhs = Expression(73, Add) +- expression 68 operands: lhs = Counter(16), rhs = Counter(17) +- expression 69 operands: lhs = Expression(73, Add), rhs = Counter(18) +- expression 70 operands: lhs = Counter(16), rhs = Counter(17) +- expression 71 operands: lhs = Counter(15), rhs = Expression(72, Add) +- expression 72 operands: lhs = Expression(73, Add), rhs = Counter(18) +- expression 73 operands: lhs = Counter(16), rhs = Counter(17) +- expression 74 operands: lhs = Expression(75, Add), rhs = Expression(76, Add) +- expression 75 operands: lhs = Counter(12), rhs = Counter(13) +- expression 76 operands: lhs = Counter(14), rhs = Counter(15) Number of file 0 mappings: 68 - Code(Counter(0)) at (prev + 3, 1) to (start + 2, 12) - Code(Counter(1)) at (prev + 2, 13) to (start + 2, 6) - Code(Zero) at (prev + 2, 5) to (start + 0, 6) - Code(Expression(0, Add)) at (prev + 3, 9) to (start + 0, 10) - = ((((c2 + c3) + c4) + c5) + c6) + = (c2 + c3) - Code(Counter(0)) at (prev + 0, 16) to (start + 0, 29) - Code(Counter(2)) at (prev + 1, 9) to (start + 1, 10) -- Code(Expression(4, Sub)) at (prev + 2, 15) to (start + 0, 28) +- Code(Expression(1, Sub)) at (prev + 2, 15) to (start + 0, 28) = (c0 - c2) -- Code(Counter(35)) at (prev + 1, 12) to (start + 0, 25) -- Code(Expression(5, Sub)) at (prev + 0, 29) to (start + 0, 42) - = (c35 - c3) -- Code(Expression(6, Sub)) at (prev + 0, 46) to (start + 0, 60) - = (c35 - (c3 + c4)) -- Code(Expression(11, Add)) at (prev + 0, 61) to (start + 2, 10) - = ((c3 + c4) + c5) -- Code(Counter(6)) at (prev + 2, 9) to (start + 0, 10) -- Code(Expression(10, Add)) at (prev + 1, 9) to (start + 1, 18) - = (((c3 + c4) + c5) + c6) -- Code(Expression(13, Sub)) at (prev + 3, 9) to (start + 0, 15) - = (c0 - (c2 + c35)) +- Code(Counter(3)) at (prev + 1, 12) to (start + 0, 25) +- Code(Expression(2, Sub)) at (prev + 0, 29) to (start + 0, 42) + = (c3 - c28) +- Code(Expression(3, Sub)) at (prev + 0, 46) to (start + 0, 60) + = (c3 - (c28 + c29)) +- Code(Expression(8, Add)) at (prev + 0, 61) to (start + 2, 10) + = ((c28 + c29) + c30) +- Code(Expression(7, Sub)) at (prev + 2, 9) to (start + 0, 10) + = (c3 - ((c28 + c29) + c30)) +- Code(Counter(3)) at (prev + 1, 9) to (start + 1, 18) +- Code(Expression(10, Sub)) at (prev + 3, 9) to (start + 0, 15) + = (c0 - (c2 + c3)) - Code(Expression(0, Add)) at (prev + 3, 9) to (start + 1, 12) - = ((((c2 + c3) + c4) + c5) + c6) -- Code(Counter(7)) at (prev + 1, 13) to (start + 2, 6) + = (c2 + c3) +- Code(Counter(4)) at (prev + 1, 13) to (start + 2, 6) - Code(Zero) at (prev + 2, 5) to (start + 0, 6) - Code(Expression(0, Add)) at (prev + 2, 8) to (start + 0, 21) - = ((((c2 + c3) + c4) + c5) + c6) -- Code(Counter(8)) at (prev + 0, 22) to (start + 2, 6) -- Code(Expression(15, Sub)) at (prev + 2, 15) to (start + 0, 28) - = (((((c2 + c3) + c4) + c5) + c6) - c8) -- Code(Expression(16, Sub)) at (prev + 1, 12) to (start + 0, 25) - = (((((c2 + c3) + c4) + c5) + c6) - (c8 + c34)) -- Code(Expression(18, Sub)) at (prev + 0, 29) to (start + 0, 42) - = (((((c2 + c3) + c4) + c5) + c6) - ((c8 + c9) + c34)) -- Code(Expression(21, Sub)) at (prev + 0, 46) to (start + 0, 60) - = (((((c2 + c3) + c4) + c5) + c6) - (((c8 + c9) + c10) + c34)) -- Code(Expression(28, Add)) at (prev + 0, 61) to (start + 2, 10) - = ((c9 + c10) + c11) -- Code(Counter(12)) at (prev + 2, 9) to (start + 0, 10) -- Code(Expression(27, Add)) at (prev + 1, 9) to (start + 0, 23) - = (((c9 + c10) + c11) + c12) -- Code(Counter(34)) at (prev + 2, 9) to (start + 0, 15) -- Code(Expression(115, Add)) at (prev + 3, 8) to (start + 0, 12) - = ((((c8 + c9) + c10) + c11) + c12) -- Code(Counter(13)) at (prev + 1, 13) to (start + 1, 16) -- Code(Counter(14)) at (prev + 1, 17) to (start + 2, 10) + = (c2 + c3) +- Code(Counter(5)) at (prev + 0, 22) to (start + 2, 6) +- Code(Expression(11, Sub)) at (prev + 2, 15) to (start + 0, 28) + = ((c2 + c3) - c5) +- Code(Counter(6)) at (prev + 1, 12) to (start + 0, 25) +- Code(Expression(12, Sub)) at (prev + 0, 29) to (start + 0, 42) + = (c6 - c25) +- Code(Expression(13, Sub)) at (prev + 0, 46) to (start + 0, 60) + = (c6 - (c25 + c26)) +- Code(Expression(18, Add)) at (prev + 0, 61) to (start + 2, 10) + = ((c25 + c26) + c27) +- Code(Expression(17, Sub)) at (prev + 2, 9) to (start + 0, 10) + = (c6 - ((c25 + c26) + c27)) +- Code(Counter(6)) at (prev + 1, 9) to (start + 0, 23) +- Code(Expression(20, Sub)) at (prev + 2, 9) to (start + 0, 15) + = ((c2 + c3) - (c5 + c6)) +- Code(Expression(59, Add)) at (prev + 3, 8) to (start + 0, 12) + = (c5 + c6) +- Code(Counter(7)) at (prev + 1, 13) to (start + 1, 16) +- Code(Counter(8)) at (prev + 1, 17) to (start + 2, 10) - Code(Zero) at (prev + 2, 9) to (start + 0, 10) -- Code(Counter(13)) at (prev + 2, 12) to (start + 0, 25) -- Code(Counter(15)) at (prev + 0, 26) to (start + 2, 10) -- Code(Expression(34, Sub)) at (prev + 4, 17) to (start + 0, 30) - = (c13 - c15) -- Code(Expression(35, Sub)) at (prev + 1, 16) to (start + 0, 29) - = (c13 - (c15 + c33)) -- Code(Expression(37, Sub)) at (prev + 0, 33) to (start + 0, 46) - = (c13 - ((c15 + c16) + c33)) -- Code(Expression(40, Sub)) at (prev + 0, 50) to (start + 0, 64) - = (c13 - (((c15 + c16) + c17) + c33)) -- Code(Expression(47, Add)) at (prev + 0, 65) to (start + 2, 14) - = ((c16 + c17) + c18) -- Code(Counter(19)) at (prev + 2, 13) to (start + 0, 14) -- Code(Expression(46, Add)) at (prev + 1, 13) to (start + 0, 27) - = (((c16 + c17) + c18) + c19) -- Code(Counter(33)) at (prev + 2, 13) to (start + 0, 19) -- Code(Zero) at (prev + 2, 5) to (start + 0, 6) -- Code(Expression(63, Sub)) at (prev + 2, 9) to (start + 1, 12) - = ((((((((((c8 + c9) + c10) + c11) + c12) + c15) + c16) + c17) + c18) + c19) - c13) -- Code(Counter(20)) at (prev + 1, 13) to (start + 2, 6) -- Code(Zero) at (prev + 2, 5) to (start + 0, 6) -- Code(Expression(155, Add)) at (prev + 2, 9) to (start + 0, 10) - = ((((c21 + c22) + c23) + c24) + c25) -- Code(Expression(63, Sub)) at (prev + 0, 16) to (start + 0, 29) - = ((((((((((c8 + c9) + c10) + c11) + c12) + c15) + c16) + c17) + c18) + c19) - c13) -- Code(Counter(21)) at (prev + 0, 30) to (start + 2, 6) -- Code(Expression(73, Sub)) at (prev + 2, 15) to (start + 0, 28) - = ((((((((((c8 + c9) + c10) + c11) + c12) + c15) + c16) + c17) + c18) + c19) - (c13 + c21)) -- Code(Expression(84, Sub)) at (prev + 1, 12) to (start + 0, 25) - = ((((((((((c8 + c9) + c10) + c11) + c12) + c15) + c16) + c17) + c18) + c19) - ((c13 + c21) + c32)) -- Code(Expression(96, Sub)) at (prev + 0, 29) to (start + 0, 42) - = ((((((((((c8 + c9) + c10) + c11) + c12) + c15) + c16) + c17) + c18) + c19) - (((c13 + c21) + c22) + c32)) -- Code(Expression(109, Sub)) at (prev + 0, 46) to (start + 0, 60) - = ((((((((((c8 + c9) + c10) + c11) + c12) + c15) + c16) + c17) + c18) + c19) - ((((c13 + c21) + c22) + c23) + c32)) -- Code(Expression(126, Add)) at (prev + 0, 61) to (start + 2, 10) +- Code(Counter(7)) at (prev + 2, 12) to (start + 0, 25) +- Code(Counter(9)) at (prev + 0, 26) to (start + 2, 10) +- Code(Expression(23, Sub)) at (prev + 4, 17) to (start + 0, 30) + = (c7 - c9) +- Code(Counter(10)) at (prev + 1, 16) to (start + 0, 29) +- Code(Expression(24, Sub)) at (prev + 0, 33) to (start + 0, 46) + = (c10 - c22) +- Code(Expression(25, Sub)) at (prev + 0, 50) to (start + 0, 64) + = (c10 - (c22 + c23)) +- Code(Expression(30, Add)) at (prev + 0, 65) to (start + 2, 14) = ((c22 + c23) + c24) -- Code(Counter(25)) at (prev + 2, 9) to (start + 0, 10) -- Code(Expression(125, Add)) at (prev + 1, 9) to (start + 0, 23) - = (((c22 + c23) + c24) + c25) -- Code(Counter(32)) at (prev + 2, 13) to (start + 2, 15) -- Code(Expression(128, Add)) at (prev + 5, 9) to (start + 0, 10) - = ((((c26 + c27) + c28) + c29) + c30) -- Code(Expression(155, Add)) at (prev + 0, 16) to (start + 0, 29) - = ((((c21 + c22) + c23) + c24) + c25) -- Code(Counter(26)) at (prev + 0, 30) to (start + 2, 6) -- Code(Expression(136, Sub)) at (prev + 2, 15) to (start + 0, 28) - = (((((c21 + c22) + c23) + c24) + c25) - c26) -- Code(Expression(141, Sub)) at (prev + 1, 12) to (start + 0, 25) - = (((((c21 + c22) + c23) + c24) + c25) - (c26 + c31)) -- Code(Expression(147, Sub)) at (prev + 0, 29) to (start + 0, 42) - = (((((c21 + c22) + c23) + c24) + c25) - ((c26 + c27) + c31)) -- Code(Expression(154, Sub)) at (prev + 0, 46) to (start + 0, 60) - = (((((c21 + c22) + c23) + c24) + c25) - (((c26 + c27) + c28) + c31)) -- Code(Expression(165, Add)) at (prev + 0, 61) to (start + 2, 10) - = ((c27 + c28) + c29) -- Code(Counter(30)) at (prev + 2, 9) to (start + 0, 10) -- Code(Expression(164, Add)) at (prev + 1, 9) to (start + 0, 23) - = (((c27 + c28) + c29) + c30) -- Code(Counter(31)) at (prev + 2, 9) to (start + 0, 15) -- Code(Expression(167, Sub)) at (prev + 2, 1) to (start + 0, 2) - = ((((((((((c0 + c26) + c27) + c28) + c29) + c30) + c31) + c32) + c33) + c34) - (c2 + c35)) -Highest counter ID seen: c35 +- Code(Expression(29, Sub)) at (prev + 2, 13) to (start + 0, 14) + = (c10 - ((c22 + c23) + c24)) +- Code(Counter(10)) at (prev + 1, 13) to (start + 0, 27) +- Code(Expression(32, Sub)) at (prev + 2, 13) to (start + 0, 19) + = (c7 - (c9 + c10)) +- Code(Zero) at (prev + 2, 5) to (start + 0, 6) +- Code(Expression(39, Sub)) at (prev + 2, 9) to (start + 1, 12) + = ((((c5 + c6) + c9) + c10) - c7) +- Code(Counter(11)) at (prev + 1, 13) to (start + 2, 6) +- Code(Zero) at (prev + 2, 5) to (start + 0, 6) +- Code(Expression(75, Add)) at (prev + 2, 9) to (start + 0, 10) + = (c12 + c13) +- Code(Expression(39, Sub)) at (prev + 0, 16) to (start + 0, 29) + = ((((c5 + c6) + c9) + c10) - c7) +- Code(Counter(12)) at (prev + 0, 30) to (start + 2, 6) +- Code(Expression(43, Sub)) at (prev + 2, 15) to (start + 0, 28) + = ((((c5 + c6) + c9) + c10) - (c7 + c12)) +- Code(Counter(13)) at (prev + 1, 12) to (start + 0, 25) +- Code(Expression(48, Sub)) at (prev + 0, 29) to (start + 0, 42) + = (c13 - c19) +- Code(Expression(49, Sub)) at (prev + 0, 46) to (start + 0, 60) + = (c13 - (c19 + c20)) +- Code(Expression(54, Add)) at (prev + 0, 61) to (start + 2, 10) + = ((c19 + c20) + c21) +- Code(Expression(53, Sub)) at (prev + 2, 9) to (start + 0, 10) + = (c13 - ((c19 + c20) + c21)) +- Code(Counter(13)) at (prev + 1, 9) to (start + 0, 23) +- Code(Expression(56, Sub)) at (prev + 2, 13) to (start + 2, 15) + = ((((c5 + c6) + c9) + c10) - ((c7 + c12) + c13)) +- Code(Expression(76, Add)) at (prev + 5, 9) to (start + 0, 10) + = (c14 + c15) +- Code(Expression(75, Add)) at (prev + 0, 16) to (start + 0, 29) + = (c12 + c13) +- Code(Counter(14)) at (prev + 0, 30) to (start + 2, 6) +- Code(Expression(64, Sub)) at (prev + 2, 15) to (start + 0, 28) + = ((c12 + c13) - c14) +- Code(Counter(15)) at (prev + 1, 12) to (start + 0, 25) +- Code(Expression(66, Sub)) at (prev + 0, 29) to (start + 0, 42) + = (c15 - c16) +- Code(Expression(67, Sub)) at (prev + 0, 46) to (start + 0, 60) + = (c15 - (c16 + c17)) +- Code(Expression(72, Add)) at (prev + 0, 61) to (start + 2, 10) + = ((c16 + c17) + c18) +- Code(Expression(71, Sub)) at (prev + 2, 9) to (start + 0, 10) + = (c15 - ((c16 + c17) + c18)) +- Code(Counter(15)) at (prev + 1, 9) to (start + 0, 23) +- Code(Expression(74, Sub)) at (prev + 2, 9) to (start + 0, 15) + = ((c12 + c13) - (c14 + c15)) +- Code(Counter(0)) at (prev + 2, 1) to (start + 0, 2) +Highest counter ID seen: c15 diff --git a/tests/coverage/continue.cov-map b/tests/coverage/continue.cov-map index 55313d7db49..eb968fbb747 100644 --- a/tests/coverage/continue.cov-map +++ b/tests/coverage/continue.cov-map @@ -1,5 +1,5 @@ Function name: continue::main -Raw bytes (210): 0x[01, 01, 1c, 07, 09, 01, 05, 03, 0d, 1f, 15, 0d, 11, 1b, 19, 1f, 15, 0d, 11, 33, 21, 19, 1d, 2f, 25, 33, 21, 19, 1d, 47, 2d, 25, 29, 43, 31, 47, 2d, 25, 29, 5b, 39, 31, 35, 57, 3d, 5b, 39, 31, 35, 35, 39, 3d, 41, 6b, 45, 3d, 41, 45, 49, 1e, 01, 03, 01, 03, 12, 03, 04, 0e, 00, 13, 0a, 01, 0f, 00, 16, 05, 02, 11, 00, 19, 09, 02, 12, 04, 0e, 1b, 06, 0e, 00, 13, 16, 01, 0f, 00, 16, 15, 01, 16, 02, 0e, 11, 04, 11, 00, 19, 15, 03, 09, 00, 0e, 2f, 02, 0e, 00, 13, 2a, 01, 0f, 00, 16, 1d, 01, 15, 02, 0e, 21, 04, 11, 00, 19, 1d, 03, 09, 00, 0e, 43, 02, 0e, 00, 13, 3e, 01, 0c, 00, 13, 29, 01, 0d, 00, 15, 2d, 01, 0a, 01, 0e, 57, 03, 0e, 00, 13, 52, 01, 0f, 00, 16, 39, 01, 16, 02, 0e, 35, 03, 12, 02, 0e, 5f, 04, 09, 00, 0e, 6b, 02, 0e, 00, 13, 66, 01, 0f, 00, 16, 41, 01, 16, 02, 0e, 49, 04, 11, 00, 16, 41, 03, 09, 00, 0e, 6f, 02, 0d, 01, 02] +Raw bytes (210): 0x[01, 01, 1c, 07, 09, 01, 05, 03, 0d, 1f, 15, 0d, 11, 1b, 19, 1f, 15, 0d, 11, 33, 21, 19, 1d, 2f, 25, 33, 21, 19, 1d, 47, 2d, 25, 29, 43, 31, 47, 2d, 25, 29, 5b, 39, 31, 35, 57, 3d, 5b, 39, 31, 35, 35, 39, 3d, 41, 6b, 45, 3d, 41, 3d, 45, 1e, 01, 03, 01, 03, 12, 03, 04, 0e, 00, 13, 0a, 01, 0f, 00, 16, 05, 02, 11, 00, 19, 09, 02, 12, 04, 0e, 1b, 06, 0e, 00, 13, 16, 01, 0f, 00, 16, 15, 01, 16, 02, 0e, 11, 04, 11, 00, 19, 15, 03, 09, 00, 0e, 2f, 02, 0e, 00, 13, 2a, 01, 0f, 00, 16, 1d, 01, 15, 02, 0e, 21, 04, 11, 00, 19, 1d, 03, 09, 00, 0e, 43, 02, 0e, 00, 13, 3e, 01, 0c, 00, 13, 29, 01, 0d, 00, 15, 2d, 01, 0a, 01, 0e, 57, 03, 0e, 00, 13, 52, 01, 0f, 00, 16, 39, 01, 16, 02, 0e, 35, 03, 12, 02, 0e, 5f, 04, 09, 00, 0e, 6b, 02, 0e, 00, 13, 66, 01, 0f, 00, 16, 41, 01, 16, 02, 0e, 6e, 04, 11, 00, 16, 41, 03, 09, 00, 0e, 3d, 02, 0d, 01, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 28 @@ -30,7 +30,7 @@ Number of expressions: 28 - expression 24 operands: lhs = Counter(15), rhs = Counter(16) - expression 25 operands: lhs = Expression(26, Add), rhs = Counter(17) - expression 26 operands: lhs = Counter(15), rhs = Counter(16) -- expression 27 operands: lhs = Counter(17), rhs = Counter(18) +- expression 27 operands: lhs = Counter(15), rhs = Counter(17) Number of file 0 mappings: 30 - Code(Counter(0)) at (prev + 3, 1) to (start + 3, 18) - Code(Expression(0, Add)) at (prev + 4, 14) to (start + 0, 19) @@ -72,9 +72,9 @@ Number of file 0 mappings: 30 - Code(Expression(25, Sub)) at (prev + 1, 15) to (start + 0, 22) = ((c15 + c16) - c17) - Code(Counter(16)) at (prev + 1, 22) to (start + 2, 14) -- Code(Counter(18)) at (prev + 4, 17) to (start + 0, 22) +- Code(Expression(27, Sub)) at (prev + 4, 17) to (start + 0, 22) + = (c15 - c17) - Code(Counter(16)) at (prev + 3, 9) to (start + 0, 14) -- Code(Expression(27, Add)) at (prev + 2, 13) to (start + 1, 2) - = (c17 + c18) -Highest counter ID seen: c18 +- Code(Counter(15)) at (prev + 2, 13) to (start + 1, 2) +Highest counter ID seen: c16 diff --git a/tests/coverage/coroutine.cov-map b/tests/coverage/coroutine.cov-map index 21f6787e9f2..7457a528a86 100644 --- a/tests/coverage/coroutine.cov-map +++ b/tests/coverage/coroutine.cov-map @@ -13,18 +13,14 @@ Number of file 0 mappings: 4 Highest counter ID seen: c1 Function name: coroutine::main -Raw bytes (65): 0x[01, 01, 08, 07, 0d, 05, 09, 11, 15, 11, 1f, 15, 19, 15, 19, 11, 1f, 15, 19, 09, 01, 13, 01, 02, 16, 01, 08, 0b, 00, 2e, 11, 01, 2b, 00, 2d, 03, 01, 0e, 00, 35, 11, 02, 0b, 00, 2e, 0a, 01, 22, 00, 27, 1a, 00, 2c, 00, 2e, 1f, 01, 0e, 00, 35, 1a, 02, 01, 00, 02] +Raw bytes (57): 0x[01, 01, 04, 07, 0d, 05, 09, 11, 19, 11, 15, 09, 01, 13, 01, 02, 16, 01, 08, 0b, 00, 2e, 11, 01, 2b, 00, 2d, 03, 01, 0e, 00, 35, 11, 02, 0b, 00, 2e, 0a, 01, 22, 00, 27, 15, 00, 2c, 00, 2e, 0e, 01, 0e, 00, 35, 15, 02, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 8 +Number of expressions: 4 - expression 0 operands: lhs = Expression(1, Add), rhs = Counter(3) - expression 1 operands: lhs = Counter(1), rhs = Counter(2) -- expression 2 operands: lhs = Counter(4), rhs = Counter(5) -- expression 3 operands: lhs = Counter(4), rhs = Expression(7, Add) -- expression 4 operands: lhs = Counter(5), rhs = Counter(6) -- expression 5 operands: lhs = Counter(5), rhs = Counter(6) -- expression 6 operands: lhs = Counter(4), rhs = Expression(7, Add) -- expression 7 operands: lhs = Counter(5), rhs = Counter(6) +- expression 2 operands: lhs = Counter(4), rhs = Counter(6) +- expression 3 operands: lhs = Counter(4), rhs = Counter(5) Number of file 0 mappings: 9 - Code(Counter(0)) at (prev + 19, 1) to (start + 2, 22) - Code(Counter(0)) at (prev + 8, 11) to (start + 0, 46) @@ -33,14 +29,12 @@ Number of file 0 mappings: 9 = ((c1 + c2) + c3) - Code(Counter(4)) at (prev + 2, 11) to (start + 0, 46) - Code(Expression(2, Sub)) at (prev + 1, 34) to (start + 0, 39) + = (c4 - c6) +- Code(Counter(5)) at (prev + 0, 44) to (start + 0, 46) +- Code(Expression(3, Sub)) at (prev + 1, 14) to (start + 0, 53) = (c4 - c5) -- Code(Expression(6, Sub)) at (prev + 0, 44) to (start + 0, 46) - = (c4 - (c5 + c6)) -- Code(Expression(7, Add)) at (prev + 1, 14) to (start + 0, 53) - = (c5 + c6) -- Code(Expression(6, Sub)) at (prev + 2, 1) to (start + 0, 2) - = (c4 - (c5 + c6)) -Highest counter ID seen: c4 +- Code(Counter(5)) at (prev + 2, 1) to (start + 0, 2) +Highest counter ID seen: c5 Function name: coroutine::main::{closure#0} Raw bytes (14): 0x[01, 01, 00, 02, 01, 16, 08, 01, 1f, 05, 02, 10, 01, 06] diff --git a/tests/coverage/inline.cov-map b/tests/coverage/inline.cov-map index 1b5b45695dc..39ba2b2d99b 100644 --- a/tests/coverage/inline.cov-map +++ b/tests/coverage/inline.cov-map @@ -41,7 +41,7 @@ Number of file 0 mappings: 1 Highest counter ID seen: c0 Function name: inline::permutate:: -Raw bytes (54): 0x[01, 01, 05, 01, 05, 01, 0b, 05, 0d, 13, 0d, 05, 09, 08, 01, 0f, 01, 02, 0e, 05, 02, 0f, 02, 06, 02, 02, 0f, 00, 14, 11, 01, 0d, 00, 0e, 06, 00, 12, 00, 16, 11, 00, 17, 04, 0a, 0d, 05, 0c, 02, 06, 0f, 03, 01, 00, 02] +Raw bytes (54): 0x[01, 01, 05, 01, 05, 01, 0b, 05, 0d, 13, 0d, 01, 09, 08, 01, 0f, 01, 02, 0e, 05, 02, 0f, 02, 06, 02, 02, 0f, 00, 14, 11, 01, 0d, 00, 0e, 0d, 00, 12, 00, 16, 11, 00, 17, 04, 0a, 06, 05, 0c, 02, 06, 0e, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 5 @@ -49,19 +49,19 @@ Number of expressions: 5 - expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) - expression 2 operands: lhs = Counter(1), rhs = Counter(3) - expression 3 operands: lhs = Expression(4, Add), rhs = Counter(3) -- expression 4 operands: lhs = Counter(1), rhs = Counter(2) +- expression 4 operands: lhs = Counter(0), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 15, 1) to (start + 2, 14) - Code(Counter(1)) at (prev + 2, 15) to (start + 2, 6) - Code(Expression(0, Sub)) at (prev + 2, 15) to (start + 0, 20) = (c0 - c1) - Code(Counter(4)) at (prev + 1, 13) to (start + 0, 14) -- Code(Expression(1, Sub)) at (prev + 0, 18) to (start + 0, 22) - = (c0 - (c1 + c3)) +- Code(Counter(3)) at (prev + 0, 18) to (start + 0, 22) - Code(Counter(4)) at (prev + 0, 23) to (start + 4, 10) -- Code(Counter(3)) at (prev + 5, 12) to (start + 2, 6) -- Code(Expression(3, Add)) at (prev + 3, 1) to (start + 0, 2) - = ((c1 + c2) + c3) +- Code(Expression(1, Sub)) at (prev + 5, 12) to (start + 2, 6) + = (c0 - (c1 + c3)) +- Code(Expression(3, Sub)) at (prev + 3, 1) to (start + 0, 2) + = ((c0 + c2) - c3) Highest counter ID seen: c4 Function name: inline::permutations:: diff --git a/tests/coverage/loops_branches.cov-map b/tests/coverage/loops_branches.cov-map index 14707701d8a..0279a1a5157 100644 --- a/tests/coverage/loops_branches.cov-map +++ b/tests/coverage/loops_branches.cov-map @@ -1,42 +1,32 @@ Function name: ::fmt -Raw bytes (174): 0x[01, 01, 22, 05, 00, 2f, 7b, 67, 00, 77, 19, 01, 15, 05, 21, 2f, 05, 67, 00, 77, 19, 01, 15, 2f, 7b, 67, 00, 77, 19, 01, 15, 05, 21, 67, 7b, 77, 19, 01, 15, 05, 21, 67, 5b, 77, 19, 01, 15, 7b, 00, 05, 21, 67, 7b, 77, 19, 01, 15, 05, 21, 77, 7b, 01, 15, 05, 21, 83, 01, 05, 87, 01, 15, 01, 11, 14, 01, 09, 05, 01, 10, 05, 02, 10, 00, 15, 00, 01, 17, 00, 1b, 00, 00, 1c, 00, 1e, 02, 01, 0d, 00, 0e, 05, 01, 0d, 00, 1e, 11, 00, 1e, 00, 1f, 00, 01, 10, 01, 0a, 2a, 03, 0d, 00, 0e, 1a, 00, 12, 00, 17, 2a, 01, 10, 00, 14, 62, 01, 14, 00, 19, 00, 01, 1b, 00, 1f, 00, 00, 20, 00, 22, 4e, 01, 11, 00, 12, 62, 01, 11, 00, 22, 72, 00, 22, 00, 23, 00, 01, 14, 01, 0e, 21, 03, 09, 00, 0f, 7e, 01, 05, 00, 06] +Raw bytes (152): 0x[01, 01, 18, 05, 00, 27, 57, 53, 00, 01, 1d, 11, 19, 27, 11, 53, 00, 01, 1d, 27, 57, 53, 00, 01, 1d, 11, 19, 53, 57, 01, 1d, 11, 19, 53, 47, 01, 1d, 57, 00, 11, 19, 53, 57, 01, 1d, 11, 19, 5f, 19, 11, 15, 14, 01, 09, 05, 01, 10, 05, 02, 10, 00, 15, 00, 01, 17, 00, 1b, 00, 00, 1c, 00, 1e, 02, 01, 0d, 00, 0e, 05, 01, 0d, 00, 1e, 11, 00, 1e, 00, 1f, 00, 01, 10, 01, 0a, 22, 03, 0d, 00, 0e, 16, 00, 12, 00, 17, 22, 01, 10, 00, 14, 4e, 01, 14, 00, 19, 00, 01, 1b, 00, 1f, 00, 00, 20, 00, 22, 3e, 01, 11, 00, 12, 4e, 01, 11, 00, 22, 15, 00, 22, 00, 23, 00, 01, 14, 01, 0e, 19, 03, 09, 00, 0f, 5b, 01, 05, 00, 06] Number of files: 1 - file 0 => global file 1 -Number of expressions: 34 +Number of expressions: 24 - expression 0 operands: lhs = Counter(1), rhs = Zero -- expression 1 operands: lhs = Expression(11, Add), rhs = Expression(30, Add) -- expression 2 operands: lhs = Expression(25, Add), rhs = Zero -- expression 3 operands: lhs = Expression(29, Add), rhs = Counter(6) -- expression 4 operands: lhs = Counter(0), rhs = Counter(5) -- expression 5 operands: lhs = Counter(1), rhs = Counter(8) -- expression 6 operands: lhs = Expression(11, Add), rhs = Counter(1) -- expression 7 operands: lhs = Expression(25, Add), rhs = Zero -- expression 8 operands: lhs = Expression(29, Add), rhs = Counter(6) -- expression 9 operands: lhs = Counter(0), rhs = Counter(5) -- expression 10 operands: lhs = Expression(11, Add), rhs = Expression(30, Add) -- expression 11 operands: lhs = Expression(25, Add), rhs = Zero -- expression 12 operands: lhs = Expression(29, Add), rhs = Counter(6) -- expression 13 operands: lhs = Counter(0), rhs = Counter(5) -- expression 14 operands: lhs = Counter(1), rhs = Counter(8) -- expression 15 operands: lhs = Expression(25, Add), rhs = Expression(30, Add) -- expression 16 operands: lhs = Expression(29, Add), rhs = Counter(6) -- expression 17 operands: lhs = Counter(0), rhs = Counter(5) -- expression 18 operands: lhs = Counter(1), rhs = Counter(8) -- expression 19 operands: lhs = Expression(25, Add), rhs = Expression(22, Add) -- expression 20 operands: lhs = Expression(29, Add), rhs = Counter(6) -- expression 21 operands: lhs = Counter(0), rhs = Counter(5) -- expression 22 operands: lhs = Expression(30, Add), rhs = Zero -- expression 23 operands: lhs = Counter(1), rhs = Counter(8) -- expression 24 operands: lhs = Expression(25, Add), rhs = Expression(30, Add) -- expression 25 operands: lhs = Expression(29, Add), rhs = Counter(6) -- expression 26 operands: lhs = Counter(0), rhs = Counter(5) -- expression 27 operands: lhs = Counter(1), rhs = Counter(8) -- expression 28 operands: lhs = Expression(29, Add), rhs = Expression(30, Add) -- expression 29 operands: lhs = Counter(0), rhs = Counter(5) -- expression 30 operands: lhs = Counter(1), rhs = Counter(8) -- expression 31 operands: lhs = Expression(32, Add), rhs = Counter(1) -- expression 32 operands: lhs = Expression(33, Add), rhs = Counter(5) -- expression 33 operands: lhs = Counter(0), rhs = Counter(4) +- expression 1 operands: lhs = Expression(9, Add), rhs = Expression(21, Add) +- expression 2 operands: lhs = Expression(20, Add), rhs = Zero +- expression 3 operands: lhs = Counter(0), rhs = Counter(7) +- expression 4 operands: lhs = Counter(4), rhs = Counter(6) +- expression 5 operands: lhs = Expression(9, Add), rhs = Counter(4) +- expression 6 operands: lhs = Expression(20, Add), rhs = Zero +- expression 7 operands: lhs = Counter(0), rhs = Counter(7) +- expression 8 operands: lhs = Expression(9, Add), rhs = Expression(21, Add) +- expression 9 operands: lhs = Expression(20, Add), rhs = Zero +- expression 10 operands: lhs = Counter(0), rhs = Counter(7) +- expression 11 operands: lhs = Counter(4), rhs = Counter(6) +- expression 12 operands: lhs = Expression(20, Add), rhs = Expression(21, Add) +- expression 13 operands: lhs = Counter(0), rhs = Counter(7) +- expression 14 operands: lhs = Counter(4), rhs = Counter(6) +- expression 15 operands: lhs = Expression(20, Add), rhs = Expression(17, Add) +- expression 16 operands: lhs = Counter(0), rhs = Counter(7) +- expression 17 operands: lhs = Expression(21, Add), rhs = Zero +- expression 18 operands: lhs = Counter(4), rhs = Counter(6) +- expression 19 operands: lhs = Expression(20, Add), rhs = Expression(21, Add) +- expression 20 operands: lhs = Counter(0), rhs = Counter(7) +- expression 21 operands: lhs = Counter(4), rhs = Counter(6) +- expression 22 operands: lhs = Expression(23, Add), rhs = Counter(6) +- expression 23 operands: lhs = Counter(4), rhs = Counter(5) Number of file 0 mappings: 20 - Code(Counter(0)) at (prev + 9, 5) to (start + 1, 16) - Code(Counter(1)) at (prev + 2, 16) to (start + 0, 21) @@ -47,57 +37,57 @@ Number of file 0 mappings: 20 - Code(Counter(1)) at (prev + 1, 13) to (start + 0, 30) - Code(Counter(4)) at (prev + 0, 30) to (start + 0, 31) - Code(Zero) at (prev + 1, 16) to (start + 1, 10) -- Code(Expression(10, Sub)) at (prev + 3, 13) to (start + 0, 14) - = ((((c0 + c5) + c6) + Zero) - (c1 + c8)) -- Code(Expression(6, Sub)) at (prev + 0, 18) to (start + 0, 23) - = ((((c0 + c5) + c6) + Zero) - c1) -- Code(Expression(10, Sub)) at (prev + 1, 16) to (start + 0, 20) - = ((((c0 + c5) + c6) + Zero) - (c1 + c8)) -- Code(Expression(24, Sub)) at (prev + 1, 20) to (start + 0, 25) - = (((c0 + c5) + c6) - (c1 + c8)) +- Code(Expression(8, Sub)) at (prev + 3, 13) to (start + 0, 14) + = (((c0 + c7) + Zero) - (c4 + c6)) +- Code(Expression(5, Sub)) at (prev + 0, 18) to (start + 0, 23) + = (((c0 + c7) + Zero) - c4) +- Code(Expression(8, Sub)) at (prev + 1, 16) to (start + 0, 20) + = (((c0 + c7) + Zero) - (c4 + c6)) +- Code(Expression(19, Sub)) at (prev + 1, 20) to (start + 0, 25) + = ((c0 + c7) - (c4 + c6)) - Code(Zero) at (prev + 1, 27) to (start + 0, 31) - Code(Zero) at (prev + 0, 32) to (start + 0, 34) -- Code(Expression(19, Sub)) at (prev + 1, 17) to (start + 0, 18) - = (((c0 + c5) + c6) - ((c1 + c8) + Zero)) -- Code(Expression(24, Sub)) at (prev + 1, 17) to (start + 0, 34) - = (((c0 + c5) + c6) - (c1 + c8)) -- Code(Expression(28, Sub)) at (prev + 0, 34) to (start + 0, 35) - = ((c0 + c5) - (c1 + c8)) +- Code(Expression(15, Sub)) at (prev + 1, 17) to (start + 0, 18) + = ((c0 + c7) - ((c4 + c6) + Zero)) +- Code(Expression(19, Sub)) at (prev + 1, 17) to (start + 0, 34) + = ((c0 + c7) - (c4 + c6)) +- Code(Counter(5)) at (prev + 0, 34) to (start + 0, 35) - Code(Zero) at (prev + 1, 20) to (start + 1, 14) -- Code(Counter(8)) at (prev + 3, 9) to (start + 0, 15) -- Code(Expression(31, Sub)) at (prev + 1, 5) to (start + 0, 6) - = (((c0 + c4) + c5) - c1) -Highest counter ID seen: c8 +- Code(Counter(6)) at (prev + 3, 9) to (start + 0, 15) +- Code(Expression(22, Add)) at (prev + 1, 5) to (start + 0, 6) + = ((c4 + c5) + c6) +Highest counter ID seen: c6 Function name: ::fmt -Raw bytes (152): 0x[01, 01, 18, 01, 00, 01, 00, 23, 15, 27, 11, 00, 0d, 27, 11, 00, 0d, 23, 15, 27, 11, 00, 0d, 4b, 15, 4f, 11, 00, 0d, 4b, 43, 4f, 11, 00, 0d, 15, 00, 4b, 15, 4f, 11, 00, 0d, 5f, 15, 00, 11, 5f, 21, 00, 11, 14, 01, 22, 05, 01, 11, 00, 01, 12, 01, 0a, 02, 02, 10, 00, 15, 00, 01, 17, 00, 1b, 00, 00, 1c, 00, 1e, 06, 01, 0d, 00, 0e, 02, 01, 0d, 00, 1e, 21, 00, 1e, 00, 1f, 1e, 02, 0d, 00, 0e, 23, 00, 12, 00, 17, 1e, 01, 10, 00, 15, 00, 00, 16, 01, 0e, 46, 02, 14, 00, 19, 00, 01, 1b, 00, 1f, 00, 00, 20, 00, 22, 36, 01, 11, 00, 12, 46, 01, 11, 00, 22, 52, 00, 22, 00, 23, 15, 03, 09, 00, 0f, 5b, 01, 05, 00, 06] +Raw bytes (154): 0x[01, 01, 19, 01, 00, 01, 00, 2b, 63, 2f, 0d, 01, 00, 11, 15, 2b, 11, 2f, 0d, 01, 00, 2b, 63, 2f, 0d, 01, 00, 11, 15, 57, 63, 01, 0d, 11, 15, 57, 4b, 01, 0d, 63, 00, 11, 15, 57, 63, 01, 0d, 11, 15, 63, 21, 11, 15, 14, 01, 22, 05, 01, 11, 00, 01, 12, 01, 0a, 02, 02, 10, 00, 15, 00, 01, 17, 00, 1b, 00, 00, 1c, 00, 1e, 06, 01, 0d, 00, 0e, 02, 01, 0d, 00, 1e, 11, 00, 1e, 00, 1f, 26, 02, 0d, 00, 0e, 1a, 00, 12, 00, 17, 26, 01, 10, 00, 15, 00, 00, 16, 01, 0e, 52, 02, 14, 00, 19, 00, 01, 1b, 00, 1f, 00, 00, 20, 00, 22, 42, 01, 11, 00, 12, 52, 01, 11, 00, 22, 21, 00, 22, 00, 23, 15, 03, 09, 00, 0f, 5f, 01, 05, 00, 06] Number of files: 1 - file 0 => global file 1 -Number of expressions: 24 +Number of expressions: 25 - expression 0 operands: lhs = Counter(0), rhs = Zero - expression 1 operands: lhs = Counter(0), rhs = Zero -- expression 2 operands: lhs = Expression(8, Add), rhs = Counter(5) -- expression 3 operands: lhs = Expression(9, Add), rhs = Counter(4) -- expression 4 operands: lhs = Zero, rhs = Counter(3) -- expression 5 operands: lhs = Expression(9, Add), rhs = Counter(4) -- expression 6 operands: lhs = Zero, rhs = Counter(3) -- expression 7 operands: lhs = Expression(8, Add), rhs = Counter(5) -- expression 8 operands: lhs = Expression(9, Add), rhs = Counter(4) -- expression 9 operands: lhs = Zero, rhs = Counter(3) -- expression 10 operands: lhs = Expression(18, Add), rhs = Counter(5) -- expression 11 operands: lhs = Expression(19, Add), rhs = Counter(4) -- expression 12 operands: lhs = Zero, rhs = Counter(3) -- expression 13 operands: lhs = Expression(18, Add), rhs = Expression(16, Add) -- expression 14 operands: lhs = Expression(19, Add), rhs = Counter(4) -- expression 15 operands: lhs = Zero, rhs = Counter(3) -- expression 16 operands: lhs = Counter(5), rhs = Zero -- expression 17 operands: lhs = Expression(18, Add), rhs = Counter(5) -- expression 18 operands: lhs = Expression(19, Add), rhs = Counter(4) -- expression 19 operands: lhs = Zero, rhs = Counter(3) -- expression 20 operands: lhs = Expression(23, Add), rhs = Counter(5) -- expression 21 operands: lhs = Zero, rhs = Counter(4) -- expression 22 operands: lhs = Expression(23, Add), rhs = Counter(8) -- expression 23 operands: lhs = Zero, rhs = Counter(4) +- expression 2 operands: lhs = Expression(10, Add), rhs = Expression(24, Add) +- expression 3 operands: lhs = Expression(11, Add), rhs = Counter(3) +- expression 4 operands: lhs = Counter(0), rhs = Zero +- expression 5 operands: lhs = Counter(4), rhs = Counter(5) +- expression 6 operands: lhs = Expression(10, Add), rhs = Counter(4) +- expression 7 operands: lhs = Expression(11, Add), rhs = Counter(3) +- expression 8 operands: lhs = Counter(0), rhs = Zero +- expression 9 operands: lhs = Expression(10, Add), rhs = Expression(24, Add) +- expression 10 operands: lhs = Expression(11, Add), rhs = Counter(3) +- expression 11 operands: lhs = Counter(0), rhs = Zero +- expression 12 operands: lhs = Counter(4), rhs = Counter(5) +- expression 13 operands: lhs = Expression(21, Add), rhs = Expression(24, Add) +- expression 14 operands: lhs = Counter(0), rhs = Counter(3) +- expression 15 operands: lhs = Counter(4), rhs = Counter(5) +- expression 16 operands: lhs = Expression(21, Add), rhs = Expression(18, Add) +- expression 17 operands: lhs = Counter(0), rhs = Counter(3) +- expression 18 operands: lhs = Expression(24, Add), rhs = Zero +- expression 19 operands: lhs = Counter(4), rhs = Counter(5) +- expression 20 operands: lhs = Expression(21, Add), rhs = Expression(24, Add) +- expression 21 operands: lhs = Counter(0), rhs = Counter(3) +- expression 22 operands: lhs = Counter(4), rhs = Counter(5) +- expression 23 operands: lhs = Expression(24, Add), rhs = Counter(8) +- expression 24 operands: lhs = Counter(4), rhs = Counter(5) Number of file 0 mappings: 20 - Code(Counter(0)) at (prev + 34, 5) to (start + 1, 17) - Code(Zero) at (prev + 1, 18) to (start + 1, 10) @@ -109,27 +99,26 @@ Number of file 0 mappings: 20 = (c0 - Zero) - Code(Expression(0, Sub)) at (prev + 1, 13) to (start + 0, 30) = (c0 - Zero) -- Code(Counter(8)) at (prev + 0, 30) to (start + 0, 31) -- Code(Expression(7, Sub)) at (prev + 2, 13) to (start + 0, 14) - = (((Zero + c3) + c4) - c5) -- Code(Expression(8, Add)) at (prev + 0, 18) to (start + 0, 23) - = ((Zero + c3) + c4) -- Code(Expression(7, Sub)) at (prev + 1, 16) to (start + 0, 21) - = (((Zero + c3) + c4) - c5) +- Code(Counter(4)) at (prev + 0, 30) to (start + 0, 31) +- Code(Expression(9, Sub)) at (prev + 2, 13) to (start + 0, 14) + = (((c0 + Zero) + c3) - (c4 + c5)) +- Code(Expression(6, Sub)) at (prev + 0, 18) to (start + 0, 23) + = (((c0 + Zero) + c3) - c4) +- Code(Expression(9, Sub)) at (prev + 1, 16) to (start + 0, 21) + = (((c0 + Zero) + c3) - (c4 + c5)) - Code(Zero) at (prev + 0, 22) to (start + 1, 14) -- Code(Expression(17, Sub)) at (prev + 2, 20) to (start + 0, 25) - = (((Zero + c3) + c4) - c5) +- Code(Expression(20, Sub)) at (prev + 2, 20) to (start + 0, 25) + = ((c0 + c3) - (c4 + c5)) - Code(Zero) at (prev + 1, 27) to (start + 0, 31) - Code(Zero) at (prev + 0, 32) to (start + 0, 34) -- Code(Expression(13, Sub)) at (prev + 1, 17) to (start + 0, 18) - = (((Zero + c3) + c4) - (c5 + Zero)) -- Code(Expression(17, Sub)) at (prev + 1, 17) to (start + 0, 34) - = (((Zero + c3) + c4) - c5) -- Code(Expression(20, Sub)) at (prev + 0, 34) to (start + 0, 35) - = ((Zero + c4) - c5) +- Code(Expression(16, Sub)) at (prev + 1, 17) to (start + 0, 18) + = ((c0 + c3) - ((c4 + c5) + Zero)) +- Code(Expression(20, Sub)) at (prev + 1, 17) to (start + 0, 34) + = ((c0 + c3) - (c4 + c5)) +- Code(Counter(8)) at (prev + 0, 34) to (start + 0, 35) - Code(Counter(5)) at (prev + 3, 9) to (start + 0, 15) -- Code(Expression(22, Add)) at (prev + 1, 5) to (start + 0, 6) - = ((Zero + c4) + c8) +- Code(Expression(23, Add)) at (prev + 1, 5) to (start + 0, 6) + = ((c4 + c5) + c8) Highest counter ID seen: c8 Function name: loops_branches::main diff --git a/tests/coverage/mcdc/condition-limit.cov-map b/tests/coverage/mcdc/condition-limit.cov-map index 19716878600..8ff5d6360f6 100644 --- a/tests/coverage/mcdc/condition-limit.cov-map +++ b/tests/coverage/mcdc/condition-limit.cov-map @@ -1,54 +1,16 @@ Function name: condition_limit::accept_7_conditions -Raw bytes (237): 0x[01, 01, 2e, 01, 05, 05, 09, 05, 09, 05, 7b, 09, 0d, 05, 7b, 09, 0d, 05, 77, 7b, 11, 09, 0d, 05, 77, 7b, 11, 09, 0d, 05, 73, 77, 15, 7b, 11, 09, 0d, 05, 73, 77, 15, 7b, 11, 09, 0d, 05, 6f, 73, 19, 77, 15, 7b, 11, 09, 0d, 05, 6f, 73, 19, 77, 15, 7b, 11, 09, 0d, 83, 01, 05, a7, 01, 21, ab, 01, 19, af, 01, 15, b3, 01, 11, b7, 01, 0d, 01, 09, 9f, 01, 05, a3, 01, 21, a7, 01, 1d, ab, 01, 19, af, 01, 15, b3, 01, 11, b7, 01, 0d, 01, 09, 12, 01, 07, 01, 02, 09, 28, 08, 07, 02, 08, 00, 27, 30, 05, 02, 01, 07, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 0a, 09, 07, 06, 00, 00, 0d, 00, 0e, 0a, 00, 12, 00, 13, 30, 16, 0d, 06, 05, 00, 00, 12, 00, 13, 16, 00, 17, 00, 18, 30, 2a, 11, 05, 04, 00, 00, 17, 00, 18, 2a, 00, 1c, 00, 1d, 30, 46, 15, 04, 03, 00, 00, 1c, 00, 1d, 46, 00, 21, 00, 22, 30, 6a, 19, 03, 02, 00, 00, 21, 00, 22, 6a, 00, 26, 00, 27, 30, 1d, 21, 02, 00, 00, 00, 26, 00, 27, 1d, 00, 28, 02, 06, 7e, 02, 05, 00, 06, 9a, 01, 01, 01, 00, 02] +Raw bytes (147): 0x[01, 01, 08, 01, 05, 05, 09, 09, 0d, 0d, 11, 11, 15, 15, 19, 19, 1d, 01, 1d, 12, 01, 07, 01, 02, 09, 28, 08, 07, 02, 08, 00, 27, 30, 05, 02, 01, 07, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 06, 07, 06, 00, 00, 0d, 00, 0e, 09, 00, 12, 00, 13, 30, 0d, 0a, 06, 05, 00, 00, 12, 00, 13, 0d, 00, 17, 00, 18, 30, 11, 0e, 05, 04, 00, 00, 17, 00, 18, 11, 00, 1c, 00, 1d, 30, 15, 12, 04, 03, 00, 00, 1c, 00, 1d, 15, 00, 21, 00, 22, 30, 19, 16, 03, 02, 00, 00, 21, 00, 22, 19, 00, 26, 00, 27, 30, 1d, 1a, 02, 00, 00, 00, 26, 00, 27, 1d, 00, 28, 02, 06, 1e, 02, 05, 00, 06, 01, 01, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 46 +Number of expressions: 8 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) - expression 1 operands: lhs = Counter(1), rhs = Counter(2) -- expression 2 operands: lhs = Counter(1), rhs = Counter(2) -- expression 3 operands: lhs = Counter(1), rhs = Expression(30, Add) -- expression 4 operands: lhs = Counter(2), rhs = Counter(3) -- expression 5 operands: lhs = Counter(1), rhs = Expression(30, Add) -- expression 6 operands: lhs = Counter(2), rhs = Counter(3) -- expression 7 operands: lhs = Counter(1), rhs = Expression(29, Add) -- expression 8 operands: lhs = Expression(30, Add), rhs = Counter(4) -- expression 9 operands: lhs = Counter(2), rhs = Counter(3) -- expression 10 operands: lhs = Counter(1), rhs = Expression(29, Add) -- expression 11 operands: lhs = Expression(30, Add), rhs = Counter(4) -- expression 12 operands: lhs = Counter(2), rhs = Counter(3) -- expression 13 operands: lhs = Counter(1), rhs = Expression(28, Add) -- expression 14 operands: lhs = Expression(29, Add), rhs = Counter(5) -- expression 15 operands: lhs = Expression(30, Add), rhs = Counter(4) -- expression 16 operands: lhs = Counter(2), rhs = Counter(3) -- expression 17 operands: lhs = Counter(1), rhs = Expression(28, Add) -- expression 18 operands: lhs = Expression(29, Add), rhs = Counter(5) -- expression 19 operands: lhs = Expression(30, Add), rhs = Counter(4) -- expression 20 operands: lhs = Counter(2), rhs = Counter(3) -- expression 21 operands: lhs = Counter(1), rhs = Expression(27, Add) -- expression 22 operands: lhs = Expression(28, Add), rhs = Counter(6) -- expression 23 operands: lhs = Expression(29, Add), rhs = Counter(5) -- expression 24 operands: lhs = Expression(30, Add), rhs = Counter(4) -- expression 25 operands: lhs = Counter(2), rhs = Counter(3) -- expression 26 operands: lhs = Counter(1), rhs = Expression(27, Add) -- expression 27 operands: lhs = Expression(28, Add), rhs = Counter(6) -- expression 28 operands: lhs = Expression(29, Add), rhs = Counter(5) -- expression 29 operands: lhs = Expression(30, Add), rhs = Counter(4) -- expression 30 operands: lhs = Counter(2), rhs = Counter(3) -- expression 31 operands: lhs = Expression(32, Add), rhs = Counter(1) -- expression 32 operands: lhs = Expression(41, Add), rhs = Counter(8) -- expression 33 operands: lhs = Expression(42, Add), rhs = Counter(6) -- expression 34 operands: lhs = Expression(43, Add), rhs = Counter(5) -- expression 35 operands: lhs = Expression(44, Add), rhs = Counter(4) -- expression 36 operands: lhs = Expression(45, Add), rhs = Counter(3) -- expression 37 operands: lhs = Counter(0), rhs = Counter(2) -- expression 38 operands: lhs = Expression(39, Add), rhs = Counter(1) -- expression 39 operands: lhs = Expression(40, Add), rhs = Counter(8) -- expression 40 operands: lhs = Expression(41, Add), rhs = Counter(7) -- expression 41 operands: lhs = Expression(42, Add), rhs = Counter(6) -- expression 42 operands: lhs = Expression(43, Add), rhs = Counter(5) -- expression 43 operands: lhs = Expression(44, Add), rhs = Counter(4) -- expression 44 operands: lhs = Expression(45, Add), rhs = Counter(3) -- expression 45 operands: lhs = Counter(0), rhs = Counter(2) +- expression 2 operands: lhs = Counter(2), rhs = Counter(3) +- expression 3 operands: lhs = Counter(3), rhs = Counter(4) +- expression 4 operands: lhs = Counter(4), rhs = Counter(5) +- expression 5 operands: lhs = Counter(5), rhs = Counter(6) +- expression 6 operands: lhs = Counter(6), rhs = Counter(7) +- expression 7 operands: lhs = Counter(0), rhs = Counter(7) Number of file 0 mappings: 18 - Code(Counter(0)) at (prev + 7, 1) to (start + 2, 9) - MCDCDecision { bitmap_idx: 8, conditions_num: 7 } at (prev + 2, 8) to (start + 0, 39) @@ -56,38 +18,32 @@ Number of file 0 mappings: 18 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 13) to (start + 0, 14) -- MCDCBranch { true: Expression(2, Sub), false: Counter(2), condition_id: 7, true_next_id: 6, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) - true = (c1 - c2) - false = c2 -- Code(Expression(2, Sub)) at (prev + 0, 18) to (start + 0, 19) - = (c1 - c2) -- MCDCBranch { true: Expression(5, Sub), false: Counter(3), condition_id: 6, true_next_id: 5, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) - true = (c1 - (c2 + c3)) - false = c3 -- Code(Expression(5, Sub)) at (prev + 0, 23) to (start + 0, 24) - = (c1 - (c2 + c3)) -- MCDCBranch { true: Expression(10, Sub), false: Counter(4), condition_id: 5, true_next_id: 4, false_next_id: 0 } at (prev + 0, 23) to (start + 0, 24) - true = (c1 - ((c2 + c3) + c4)) - false = c4 -- Code(Expression(10, Sub)) at (prev + 0, 28) to (start + 0, 29) - = (c1 - ((c2 + c3) + c4)) -- MCDCBranch { true: Expression(17, Sub), false: Counter(5), condition_id: 4, true_next_id: 3, false_next_id: 0 } at (prev + 0, 28) to (start + 0, 29) - true = (c1 - (((c2 + c3) + c4) + c5)) - false = c5 -- Code(Expression(17, Sub)) at (prev + 0, 33) to (start + 0, 34) - = (c1 - (((c2 + c3) + c4) + c5)) -- MCDCBranch { true: Expression(26, Sub), false: Counter(6), condition_id: 3, true_next_id: 2, false_next_id: 0 } at (prev + 0, 33) to (start + 0, 34) - true = (c1 - ((((c2 + c3) + c4) + c5) + c6)) - false = c6 -- Code(Expression(26, Sub)) at (prev + 0, 38) to (start + 0, 39) - = (c1 - ((((c2 + c3) + c4) + c5) + c6)) -- MCDCBranch { true: Counter(7), false: Counter(8), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 38) to (start + 0, 39) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 7, true_next_id: 6, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) + true = c2 + false = (c1 - c2) +- Code(Counter(2)) at (prev + 0, 18) to (start + 0, 19) +- MCDCBranch { true: Counter(3), false: Expression(2, Sub), condition_id: 6, true_next_id: 5, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) + true = c3 + false = (c2 - c3) +- Code(Counter(3)) at (prev + 0, 23) to (start + 0, 24) +- MCDCBranch { true: Counter(4), false: Expression(3, Sub), condition_id: 5, true_next_id: 4, false_next_id: 0 } at (prev + 0, 23) to (start + 0, 24) + true = c4 + false = (c3 - c4) +- Code(Counter(4)) at (prev + 0, 28) to (start + 0, 29) +- MCDCBranch { true: Counter(5), false: Expression(4, Sub), condition_id: 4, true_next_id: 3, false_next_id: 0 } at (prev + 0, 28) to (start + 0, 29) + true = c5 + false = (c4 - c5) +- Code(Counter(5)) at (prev + 0, 33) to (start + 0, 34) +- MCDCBranch { true: Counter(6), false: Expression(5, Sub), condition_id: 3, true_next_id: 2, false_next_id: 0 } at (prev + 0, 33) to (start + 0, 34) + true = c6 + false = (c5 - c6) +- Code(Counter(6)) at (prev + 0, 38) to (start + 0, 39) +- MCDCBranch { true: Counter(7), false: Expression(6, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 38) to (start + 0, 39) true = c7 - false = c8 + false = (c6 - c7) - Code(Counter(7)) at (prev + 0, 40) to (start + 2, 6) -- Code(Expression(31, Sub)) at (prev + 2, 5) to (start + 0, 6) - = (((((((c0 + c2) + c3) + c4) + c5) + c6) + c8) - c1) -- Code(Expression(38, Sub)) at (prev + 1, 1) to (start + 0, 2) - = ((((((((c0 + c2) + c3) + c4) + c5) + c6) + c7) + c8) - c1) -Highest counter ID seen: c8 +- Code(Expression(7, Sub)) at (prev + 2, 5) to (start + 0, 6) + = (c0 - c7) +- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2) +Highest counter ID seen: c7 diff --git a/tests/coverage/mcdc/if.cov-map b/tests/coverage/mcdc/if.cov-map index acb8aac63de..771351f649f 100644 --- a/tests/coverage/mcdc/if.cov-map +++ b/tests/coverage/mcdc/if.cov-map @@ -1,14 +1,11 @@ Function name: if::mcdc_check_a -Raw bytes (68): 0x[01, 01, 06, 01, 05, 0b, 05, 01, 0d, 13, 05, 17, 0d, 01, 09, 08, 01, 0f, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 0d, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 06, 02, 0c, 02, 06, 0e, 03, 01, 00, 02] +Raw bytes (62): 0x[01, 01, 03, 01, 05, 05, 09, 01, 09, 08, 01, 0f, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 06, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 0a, 02, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 +Number of expressions: 3 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Counter(0), rhs = Counter(3) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(1) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) -- expression 5 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(0), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 15, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 14) @@ -16,27 +13,23 @@ Number of file 0 mappings: 8 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 13) to (start + 0, 14) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c2 - false = c3 + false = (c1 - c2) - Code(Counter(2)) at (prev + 0, 15) to (start + 2, 6) -- Code(Expression(1, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c0 + c3) - c1) -- Code(Expression(3, Sub)) at (prev + 3, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 +- Code(Expression(2, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c0 - c2) +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c2 Function name: if::mcdc_check_b -Raw bytes (68): 0x[01, 01, 06, 01, 05, 0b, 05, 01, 0d, 13, 05, 17, 0d, 01, 09, 08, 01, 17, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 0d, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 06, 02, 0c, 02, 06, 0e, 03, 01, 00, 02] +Raw bytes (62): 0x[01, 01, 03, 01, 05, 05, 09, 01, 09, 08, 01, 17, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 06, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 0a, 02, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 +Number of expressions: 3 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Counter(0), rhs = Counter(3) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(1) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) -- expression 5 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(0), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 23, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 14) @@ -44,27 +37,23 @@ Number of file 0 mappings: 8 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 13) to (start + 0, 14) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c2 - false = c3 + false = (c1 - c2) - Code(Counter(2)) at (prev + 0, 15) to (start + 2, 6) -- Code(Expression(1, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c0 + c3) - c1) -- Code(Expression(3, Sub)) at (prev + 3, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 +- Code(Expression(2, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c0 - c2) +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c2 Function name: if::mcdc_check_both -Raw bytes (68): 0x[01, 01, 06, 01, 05, 0b, 05, 01, 0d, 13, 05, 17, 0d, 01, 09, 08, 01, 1f, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 0d, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 06, 02, 0c, 02, 06, 0e, 03, 01, 00, 02] +Raw bytes (62): 0x[01, 01, 03, 01, 05, 05, 09, 01, 09, 08, 01, 1f, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 06, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 0a, 02, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 +Number of expressions: 3 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Counter(0), rhs = Counter(3) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(1) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) -- expression 5 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(0), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 31, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 14) @@ -72,27 +61,23 @@ Number of file 0 mappings: 8 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 13) to (start + 0, 14) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c2 - false = c3 + false = (c1 - c2) - Code(Counter(2)) at (prev + 0, 15) to (start + 2, 6) -- Code(Expression(1, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c0 + c3) - c1) -- Code(Expression(3, Sub)) at (prev + 3, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 +- Code(Expression(2, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c0 - c2) +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c2 Function name: if::mcdc_check_neither -Raw bytes (68): 0x[01, 01, 06, 01, 05, 0b, 05, 01, 0d, 13, 05, 17, 0d, 01, 09, 08, 01, 07, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 0d, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 06, 02, 0c, 02, 06, 0e, 03, 01, 00, 02] +Raw bytes (62): 0x[01, 01, 03, 01, 05, 05, 09, 01, 09, 08, 01, 07, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0d, 00, 0e, 30, 09, 06, 02, 00, 00, 00, 0d, 00, 0e, 09, 00, 0f, 02, 06, 0a, 02, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 +Number of expressions: 3 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Counter(0), rhs = Counter(3) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(1) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) -- expression 5 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(0), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 7, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 14) @@ -100,32 +85,27 @@ Number of file 0 mappings: 8 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 13) to (start + 0, 14) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c2 - false = c3 + false = (c1 - c2) - Code(Counter(2)) at (prev + 0, 15) to (start + 2, 6) -- Code(Expression(1, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c0 + c3) - c1) -- Code(Expression(3, Sub)) at (prev + 3, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 +- Code(Expression(2, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c0 - c2) +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c2 Function name: if::mcdc_check_not_tree_decision -Raw bytes (93): 0x[01, 01, 0b, 01, 05, 01, 2b, 05, 09, 05, 09, 17, 2b, 01, 11, 05, 09, 23, 2b, 27, 11, 01, 0d, 05, 09, 0a, 01, 31, 01, 03, 0a, 28, 05, 03, 03, 08, 00, 15, 30, 05, 02, 01, 02, 03, 00, 09, 00, 0a, 02, 00, 0e, 00, 0f, 30, 09, 06, 03, 02, 00, 00, 0e, 00, 0f, 2b, 00, 14, 00, 15, 30, 0d, 11, 02, 00, 00, 00, 14, 00, 15, 0d, 00, 16, 02, 06, 12, 02, 0c, 02, 06, 1e, 03, 01, 00, 02] +Raw bytes (85): 0x[01, 01, 07, 01, 05, 01, 17, 05, 09, 05, 09, 17, 0d, 05, 09, 01, 0d, 0a, 01, 31, 01, 03, 0a, 28, 05, 03, 03, 08, 00, 15, 30, 05, 02, 01, 02, 03, 00, 09, 00, 0a, 02, 00, 0e, 00, 0f, 30, 09, 06, 03, 02, 00, 00, 0e, 00, 0f, 17, 00, 14, 00, 15, 30, 0d, 12, 02, 00, 00, 00, 14, 00, 15, 0d, 00, 16, 02, 06, 1a, 02, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 11 +Number of expressions: 7 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Counter(0), rhs = Expression(10, Add) +- expression 1 operands: lhs = Counter(0), rhs = Expression(5, Add) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) - expression 3 operands: lhs = Counter(1), rhs = Counter(2) -- expression 4 operands: lhs = Expression(5, Add), rhs = Expression(10, Add) -- expression 5 operands: lhs = Counter(0), rhs = Counter(4) -- expression 6 operands: lhs = Counter(1), rhs = Counter(2) -- expression 7 operands: lhs = Expression(8, Add), rhs = Expression(10, Add) -- expression 8 operands: lhs = Expression(9, Add), rhs = Counter(4) -- expression 9 operands: lhs = Counter(0), rhs = Counter(3) -- expression 10 operands: lhs = Counter(1), rhs = Counter(2) +- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) +- expression 5 operands: lhs = Counter(1), rhs = Counter(2) +- expression 6 operands: lhs = Counter(0), rhs = Counter(3) Number of file 0 mappings: 10 - Code(Counter(0)) at (prev + 49, 1) to (start + 3, 10) - MCDCDecision { bitmap_idx: 5, conditions_num: 3 } at (prev + 3, 8) to (start + 0, 21) @@ -137,33 +117,30 @@ Number of file 0 mappings: 10 - MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 3, true_next_id: 2, false_next_id: 0 } at (prev + 0, 14) to (start + 0, 15) true = c2 false = (c0 - (c1 + c2)) -- Code(Expression(10, Add)) at (prev + 0, 20) to (start + 0, 21) +- Code(Expression(5, Add)) at (prev + 0, 20) to (start + 0, 21) = (c1 + c2) -- MCDCBranch { true: Counter(3), false: Counter(4), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 20) to (start + 0, 21) +- MCDCBranch { true: Counter(3), false: Expression(4, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 20) to (start + 0, 21) true = c3 - false = c4 + false = ((c1 + c2) - c3) - Code(Counter(3)) at (prev + 0, 22) to (start + 2, 6) -- Code(Expression(4, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c0 + c4) - (c1 + c2)) -- Code(Expression(7, Sub)) at (prev + 3, 1) to (start + 0, 2) - = (((c0 + c3) + c4) - (c1 + c2)) -Highest counter ID seen: c4 +- Code(Expression(6, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c0 - c3) +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c3 Function name: if::mcdc_check_tree_decision -Raw bytes (91): 0x[01, 01, 0a, 01, 05, 05, 09, 05, 09, 09, 0d, 17, 05, 01, 11, 1f, 05, 23, 11, 27, 0d, 01, 09, 0a, 01, 27, 01, 03, 09, 28, 04, 03, 03, 08, 00, 15, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0e, 00, 0f, 30, 09, 0a, 02, 00, 03, 00, 0e, 00, 0f, 0a, 00, 13, 00, 14, 30, 0d, 11, 03, 00, 00, 00, 13, 00, 14, 0f, 00, 16, 02, 06, 12, 02, 0c, 02, 06, 1a, 03, 01, 00, 02] +Raw bytes (87): 0x[01, 01, 08, 01, 05, 05, 09, 05, 09, 05, 1f, 09, 0d, 09, 0d, 01, 1f, 09, 0d, 0a, 01, 27, 01, 03, 09, 28, 04, 03, 03, 08, 00, 15, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 05, 00, 0e, 00, 0f, 30, 09, 0a, 02, 00, 03, 00, 0e, 00, 0f, 0a, 00, 13, 00, 14, 30, 0d, 0e, 03, 00, 00, 00, 13, 00, 14, 1f, 00, 16, 02, 06, 1a, 02, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 10 +Number of expressions: 8 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) - expression 1 operands: lhs = Counter(1), rhs = Counter(2) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) -- expression 3 operands: lhs = Counter(2), rhs = Counter(3) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(1) -- expression 5 operands: lhs = Counter(0), rhs = Counter(4) -- expression 6 operands: lhs = Expression(7, Add), rhs = Counter(1) -- expression 7 operands: lhs = Expression(8, Add), rhs = Counter(4) -- expression 8 operands: lhs = Expression(9, Add), rhs = Counter(3) -- expression 9 operands: lhs = Counter(0), rhs = Counter(2) +- expression 3 operands: lhs = Counter(1), rhs = Expression(7, Add) +- expression 4 operands: lhs = Counter(2), rhs = Counter(3) +- expression 5 operands: lhs = Counter(2), rhs = Counter(3) +- expression 6 operands: lhs = Counter(0), rhs = Expression(7, Add) +- expression 7 operands: lhs = Counter(2), rhs = Counter(3) Number of file 0 mappings: 10 - Code(Counter(0)) at (prev + 39, 1) to (start + 3, 9) - MCDCDecision { bitmap_idx: 4, conditions_num: 3 } at (prev + 3, 8) to (start + 0, 21) @@ -176,38 +153,32 @@ Number of file 0 mappings: 10 false = (c1 - c2) - Code(Expression(2, Sub)) at (prev + 0, 19) to (start + 0, 20) = (c1 - c2) -- MCDCBranch { true: Counter(3), false: Counter(4), condition_id: 3, true_next_id: 0, false_next_id: 0 } at (prev + 0, 19) to (start + 0, 20) +- MCDCBranch { true: Counter(3), false: Expression(3, Sub), condition_id: 3, true_next_id: 0, false_next_id: 0 } at (prev + 0, 19) to (start + 0, 20) true = c3 - false = c4 -- Code(Expression(3, Add)) at (prev + 0, 22) to (start + 2, 6) + false = (c1 - (c2 + c3)) +- Code(Expression(7, Add)) at (prev + 0, 22) to (start + 2, 6) = (c2 + c3) -- Code(Expression(4, Sub)) at (prev + 2, 12) to (start + 2, 6) - = ((c0 + c4) - c1) -- Code(Expression(6, Sub)) at (prev + 3, 1) to (start + 0, 2) - = ((((c0 + c2) + c3) + c4) - c1) -Highest counter ID seen: c4 +- Code(Expression(6, Sub)) at (prev + 2, 12) to (start + 2, 6) + = (c0 - (c2 + c3)) +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c3 Function name: if::mcdc_nested_if -Raw bytes (130): 0x[01, 01, 10, 01, 05, 01, 3f, 05, 09, 05, 09, 3f, 0d, 05, 09, 3f, 0d, 05, 09, 0d, 15, 01, 3f, 05, 09, 33, 3f, 37, 15, 3b, 11, 01, 0d, 05, 09, 0e, 01, 3b, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 00, 02, 00, 08, 00, 09, 02, 00, 0d, 00, 0e, 30, 09, 26, 02, 00, 00, 00, 0d, 00, 0e, 3f, 01, 09, 01, 0d, 28, 06, 02, 01, 0c, 00, 12, 30, 1a, 0d, 01, 02, 00, 00, 0c, 00, 0d, 1a, 00, 11, 00, 12, 30, 11, 15, 02, 00, 00, 00, 11, 00, 12, 11, 00, 13, 02, 0a, 23, 02, 09, 00, 0a, 26, 01, 0c, 02, 06, 2e, 03, 01, 00, 02] +Raw bytes (120): 0x[01, 01, 0b, 01, 05, 01, 2b, 05, 09, 05, 09, 2b, 0d, 05, 09, 0d, 11, 2b, 11, 05, 09, 01, 2b, 05, 09, 0e, 01, 3b, 01, 01, 09, 28, 03, 02, 01, 08, 00, 0e, 30, 05, 02, 01, 00, 02, 00, 08, 00, 09, 02, 00, 0d, 00, 0e, 30, 09, 26, 02, 00, 00, 00, 0d, 00, 0e, 2b, 01, 09, 01, 0d, 28, 06, 02, 01, 0c, 00, 12, 30, 0d, 12, 01, 02, 00, 00, 0c, 00, 0d, 0d, 00, 11, 00, 12, 30, 11, 1a, 02, 00, 00, 00, 11, 00, 12, 11, 00, 13, 02, 0a, 1e, 02, 09, 00, 0a, 26, 01, 0c, 02, 06, 01, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 16 +Number of expressions: 11 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Counter(0), rhs = Expression(15, Add) +- expression 1 operands: lhs = Counter(0), rhs = Expression(10, Add) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) - expression 3 operands: lhs = Counter(1), rhs = Counter(2) -- expression 4 operands: lhs = Expression(15, Add), rhs = Counter(3) +- expression 4 operands: lhs = Expression(10, Add), rhs = Counter(3) - expression 5 operands: lhs = Counter(1), rhs = Counter(2) -- expression 6 operands: lhs = Expression(15, Add), rhs = Counter(3) -- expression 7 operands: lhs = Counter(1), rhs = Counter(2) -- expression 8 operands: lhs = Counter(3), rhs = Counter(5) -- expression 9 operands: lhs = Counter(0), rhs = Expression(15, Add) +- expression 6 operands: lhs = Counter(3), rhs = Counter(4) +- expression 7 operands: lhs = Expression(10, Add), rhs = Counter(4) +- expression 8 operands: lhs = Counter(1), rhs = Counter(2) +- expression 9 operands: lhs = Counter(0), rhs = Expression(10, Add) - expression 10 operands: lhs = Counter(1), rhs = Counter(2) -- expression 11 operands: lhs = Expression(12, Add), rhs = Expression(15, Add) -- expression 12 operands: lhs = Expression(13, Add), rhs = Counter(5) -- expression 13 operands: lhs = Expression(14, Add), rhs = Counter(4) -- expression 14 operands: lhs = Counter(0), rhs = Counter(3) -- expression 15 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 14 - Code(Counter(0)) at (prev + 59, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 14) @@ -219,23 +190,21 @@ Number of file 0 mappings: 14 - MCDCBranch { true: Counter(2), false: Expression(9, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c2 false = (c0 - (c1 + c2)) -- Code(Expression(15, Add)) at (prev + 1, 9) to (start + 1, 13) +- Code(Expression(10, Add)) at (prev + 1, 9) to (start + 1, 13) = (c1 + c2) - MCDCDecision { bitmap_idx: 6, conditions_num: 2 } at (prev + 1, 12) to (start + 0, 18) -- MCDCBranch { true: Expression(6, Sub), false: Counter(3), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 12) to (start + 0, 13) - true = ((c1 + c2) - c3) - false = c3 -- Code(Expression(6, Sub)) at (prev + 0, 17) to (start + 0, 18) - = ((c1 + c2) - c3) -- MCDCBranch { true: Counter(4), false: Counter(5), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 17) to (start + 0, 18) +- MCDCBranch { true: Counter(3), false: Expression(4, Sub), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 12) to (start + 0, 13) + true = c3 + false = ((c1 + c2) - c3) +- Code(Counter(3)) at (prev + 0, 17) to (start + 0, 18) +- MCDCBranch { true: Counter(4), false: Expression(6, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 17) to (start + 0, 18) true = c4 - false = c5 + false = (c3 - c4) - Code(Counter(4)) at (prev + 0, 19) to (start + 2, 10) -- Code(Expression(8, Add)) at (prev + 2, 9) to (start + 0, 10) - = (c3 + c5) +- Code(Expression(7, Sub)) at (prev + 2, 9) to (start + 0, 10) + = ((c1 + c2) - c4) - Code(Expression(9, Sub)) at (prev + 1, 12) to (start + 2, 6) = (c0 - (c1 + c2)) -- Code(Expression(11, Sub)) at (prev + 3, 1) to (start + 0, 2) - = ((((c0 + c3) + c4) + c5) - (c1 + c2)) -Highest counter ID seen: c5 +- Code(Counter(0)) at (prev + 3, 1) to (start + 0, 2) +Highest counter ID seen: c4 diff --git a/tests/coverage/mcdc/inlined_expressions.cov-map b/tests/coverage/mcdc/inlined_expressions.cov-map index 92ec60dc23c..6a112b66e88 100644 --- a/tests/coverage/mcdc/inlined_expressions.cov-map +++ b/tests/coverage/mcdc/inlined_expressions.cov-map @@ -1,12 +1,10 @@ Function name: inlined_expressions::inlined_instance -Raw bytes (54): 0x[01, 01, 04, 01, 05, 0b, 05, 0f, 0d, 01, 09, 06, 01, 08, 01, 01, 06, 28, 03, 02, 01, 05, 00, 0b, 30, 05, 02, 01, 02, 00, 00, 05, 00, 06, 05, 00, 0a, 00, 0b, 30, 09, 0d, 02, 00, 00, 00, 0a, 00, 0b, 06, 01, 01, 00, 02] +Raw bytes (50): 0x[01, 01, 02, 01, 05, 05, 09, 06, 01, 08, 01, 01, 06, 28, 03, 02, 01, 05, 00, 0b, 30, 05, 02, 01, 02, 00, 00, 05, 00, 06, 05, 00, 0a, 00, 0b, 30, 09, 06, 02, 00, 00, 00, 0a, 00, 0b, 01, 01, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 +Number of expressions: 2 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(3) -- expression 3 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 6 - Code(Counter(0)) at (prev + 8, 1) to (start + 1, 6) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 5) to (start + 0, 11) @@ -14,10 +12,9 @@ Number of file 0 mappings: 6 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 10) to (start + 0, 11) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 10) to (start + 0, 11) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 10) to (start + 0, 11) true = c2 - false = c3 -- Code(Expression(1, Sub)) at (prev + 1, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 + false = (c1 - c2) +- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2) +Highest counter ID seen: c2 diff --git a/tests/coverage/mcdc/nested_if.cov-map b/tests/coverage/mcdc/nested_if.cov-map index 72daecabc77..72c7d68840d 100644 --- a/tests/coverage/mcdc/nested_if.cov-map +++ b/tests/coverage/mcdc/nested_if.cov-map @@ -1,24 +1,22 @@ Function name: nested_if::doubly_nested_if_in_condition -Raw bytes (172): 0x[01, 01, 10, 01, 05, 05, 09, 05, 09, 05, 27, 09, 19, 19, 1d, 19, 1d, 23, 27, 05, 1d, 09, 19, 09, 0d, 33, 05, 01, 15, 3b, 05, 3f, 15, 01, 11, 14, 01, 0f, 01, 01, 09, 28, 09, 02, 01, 08, 00, 4e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 30, 11, 15, 02, 00, 00, 00, 0d, 00, 4e, 05, 00, 10, 00, 11, 28, 06, 02, 00, 10, 00, 36, 30, 09, 0a, 01, 00, 02, 00, 10, 00, 11, 30, 0d, 21, 02, 00, 00, 00, 15, 00, 36, 0a, 00, 18, 00, 19, 28, 03, 02, 00, 18, 00, 1e, 30, 19, 0e, 01, 02, 00, 00, 18, 00, 19, 19, 00, 1d, 00, 1e, 30, 1a, 1d, 02, 00, 00, 00, 1d, 00, 1e, 1a, 00, 21, 00, 25, 1e, 00, 2f, 00, 34, 2b, 00, 39, 00, 3e, 21, 00, 48, 00, 4c, 11, 00, 4f, 02, 06, 2e, 02, 0c, 02, 06, 36, 03, 01, 00, 02] +Raw bytes (168): 0x[01, 01, 0e, 01, 05, 05, 09, 05, 09, 05, 13, 09, 19, 19, 1d, 05, 1f, 09, 1d, 09, 0d, 2b, 05, 01, 15, 33, 05, 37, 15, 01, 11, 14, 01, 0f, 01, 01, 09, 28, 09, 02, 01, 08, 00, 4e, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 30, 11, 15, 02, 00, 00, 00, 0d, 00, 4e, 05, 00, 10, 00, 11, 28, 06, 02, 00, 10, 00, 36, 30, 09, 0a, 01, 00, 02, 00, 10, 00, 11, 30, 0d, 21, 02, 00, 00, 00, 15, 00, 36, 0a, 00, 18, 00, 19, 28, 03, 02, 00, 18, 00, 1e, 30, 19, 0e, 01, 02, 00, 00, 18, 00, 19, 19, 00, 1d, 00, 1e, 30, 1d, 16, 02, 00, 00, 00, 1d, 00, 1e, 1d, 00, 21, 00, 25, 1a, 00, 2f, 00, 34, 23, 00, 39, 00, 3e, 21, 00, 48, 00, 4c, 11, 00, 4f, 02, 06, 26, 02, 0c, 02, 06, 2e, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 16 +Number of expressions: 14 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) - expression 1 operands: lhs = Counter(1), rhs = Counter(2) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) -- expression 3 operands: lhs = Counter(1), rhs = Expression(9, Add) +- expression 3 operands: lhs = Counter(1), rhs = Expression(4, Add) - expression 4 operands: lhs = Counter(2), rhs = Counter(6) - expression 5 operands: lhs = Counter(6), rhs = Counter(7) -- expression 6 operands: lhs = Counter(6), rhs = Counter(7) -- expression 7 operands: lhs = Expression(8, Add), rhs = Expression(9, Add) -- expression 8 operands: lhs = Counter(1), rhs = Counter(7) -- expression 9 operands: lhs = Counter(2), rhs = Counter(6) -- expression 10 operands: lhs = Counter(2), rhs = Counter(3) +- expression 6 operands: lhs = Counter(1), rhs = Expression(7, Add) +- expression 7 operands: lhs = Counter(2), rhs = Counter(7) +- expression 8 operands: lhs = Counter(2), rhs = Counter(3) +- expression 9 operands: lhs = Expression(10, Add), rhs = Counter(1) +- expression 10 operands: lhs = Counter(0), rhs = Counter(5) - expression 11 operands: lhs = Expression(12, Add), rhs = Counter(1) -- expression 12 operands: lhs = Counter(0), rhs = Counter(5) -- expression 13 operands: lhs = Expression(14, Add), rhs = Counter(1) -- expression 14 operands: lhs = Expression(15, Add), rhs = Counter(5) -- expression 15 operands: lhs = Counter(0), rhs = Counter(4) +- expression 12 operands: lhs = Expression(13, Add), rhs = Counter(5) +- expression 13 operands: lhs = Counter(0), rhs = Counter(4) Number of file 0 mappings: 20 - Code(Counter(0)) at (prev + 15, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 9, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 78) @@ -43,20 +41,19 @@ Number of file 0 mappings: 20 true = c6 false = (c1 - (c2 + c6)) - Code(Counter(6)) at (prev + 0, 29) to (start + 0, 30) -- MCDCBranch { true: Expression(6, Sub), false: Counter(7), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 29) to (start + 0, 30) - true = (c6 - c7) - false = c7 -- Code(Expression(6, Sub)) at (prev + 0, 33) to (start + 0, 37) - = (c6 - c7) -- Code(Expression(7, Sub)) at (prev + 0, 47) to (start + 0, 52) - = ((c1 + c7) - (c2 + c6)) -- Code(Expression(10, Add)) at (prev + 0, 57) to (start + 0, 62) +- MCDCBranch { true: Counter(7), false: Expression(5, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 29) to (start + 0, 30) + true = c7 + false = (c6 - c7) +- Code(Counter(7)) at (prev + 0, 33) to (start + 0, 37) +- Code(Expression(6, Sub)) at (prev + 0, 47) to (start + 0, 52) + = (c1 - (c2 + c7)) +- Code(Expression(8, Add)) at (prev + 0, 57) to (start + 0, 62) = (c2 + c3) - Code(Counter(8)) at (prev + 0, 72) to (start + 0, 76) - Code(Counter(4)) at (prev + 0, 79) to (start + 2, 6) -- Code(Expression(11, Sub)) at (prev + 2, 12) to (start + 2, 6) +- Code(Expression(9, Sub)) at (prev + 2, 12) to (start + 2, 6) = ((c0 + c5) - c1) -- Code(Expression(13, Sub)) at (prev + 3, 1) to (start + 0, 2) +- Code(Expression(11, Sub)) at (prev + 3, 1) to (start + 0, 2) = (((c0 + c4) + c5) - c1) Highest counter ID seen: c8 @@ -109,30 +106,28 @@ Number of file 0 mappings: 14 Highest counter ID seen: c5 Function name: nested_if::nested_in_then_block_in_condition -Raw bytes (180): 0x[01, 01, 14, 01, 05, 05, 09, 05, 09, 05, 3b, 09, 0d, 09, 0d, 3b, 11, 09, 0d, 11, 15, 11, 15, 2f, 11, 3b, 15, 09, 0d, 05, 3b, 09, 0d, 43, 05, 01, 1d, 4b, 05, 4f, 1d, 01, 19, 14, 01, 22, 01, 01, 09, 28, 09, 02, 01, 08, 00, 4b, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 30, 19, 1d, 02, 00, 00, 00, 0d, 00, 4b, 05, 00, 10, 00, 11, 28, 03, 02, 00, 10, 00, 16, 30, 09, 0a, 01, 00, 02, 00, 10, 00, 11, 0a, 00, 15, 00, 16, 30, 0d, 36, 02, 00, 00, 00, 15, 00, 16, 3b, 00, 1c, 00, 1d, 28, 06, 02, 00, 1c, 00, 22, 30, 11, 1a, 01, 02, 00, 00, 1c, 00, 1d, 11, 00, 21, 00, 22, 30, 26, 15, 02, 00, 00, 00, 21, 00, 22, 26, 00, 25, 00, 29, 2a, 00, 33, 00, 38, 36, 00, 44, 00, 49, 19, 00, 4c, 02, 06, 3e, 02, 0c, 02, 06, 46, 03, 01, 00, 02] +Raw bytes (176): 0x[01, 01, 12, 01, 05, 05, 09, 05, 09, 05, 33, 09, 0d, 09, 0d, 33, 11, 09, 0d, 11, 15, 33, 15, 09, 0d, 05, 33, 09, 0d, 3b, 05, 01, 1d, 43, 05, 47, 1d, 01, 19, 14, 01, 22, 01, 01, 09, 28, 09, 02, 01, 08, 00, 4b, 30, 05, 02, 01, 02, 00, 00, 08, 00, 09, 30, 19, 1d, 02, 00, 00, 00, 0d, 00, 4b, 05, 00, 10, 00, 11, 28, 03, 02, 00, 10, 00, 16, 30, 09, 0a, 01, 00, 02, 00, 10, 00, 11, 0a, 00, 15, 00, 16, 30, 0d, 2e, 02, 00, 00, 00, 15, 00, 16, 33, 00, 1c, 00, 1d, 28, 06, 02, 00, 1c, 00, 22, 30, 11, 1a, 01, 02, 00, 00, 1c, 00, 1d, 11, 00, 21, 00, 22, 30, 15, 22, 02, 00, 00, 00, 21, 00, 22, 15, 00, 25, 00, 29, 26, 00, 33, 00, 38, 2e, 00, 44, 00, 49, 19, 00, 4c, 02, 06, 36, 02, 0c, 02, 06, 3e, 03, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 20 +Number of expressions: 18 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) - expression 1 operands: lhs = Counter(1), rhs = Counter(2) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) -- expression 3 operands: lhs = Counter(1), rhs = Expression(14, Add) +- expression 3 operands: lhs = Counter(1), rhs = Expression(12, Add) - expression 4 operands: lhs = Counter(2), rhs = Counter(3) - expression 5 operands: lhs = Counter(2), rhs = Counter(3) -- expression 6 operands: lhs = Expression(14, Add), rhs = Counter(4) +- expression 6 operands: lhs = Expression(12, Add), rhs = Counter(4) - expression 7 operands: lhs = Counter(2), rhs = Counter(3) - expression 8 operands: lhs = Counter(4), rhs = Counter(5) -- expression 9 operands: lhs = Counter(4), rhs = Counter(5) -- expression 10 operands: lhs = Expression(11, Add), rhs = Counter(4) -- expression 11 operands: lhs = Expression(14, Add), rhs = Counter(5) +- expression 9 operands: lhs = Expression(12, Add), rhs = Counter(5) +- expression 10 operands: lhs = Counter(2), rhs = Counter(3) +- expression 11 operands: lhs = Counter(1), rhs = Expression(12, Add) - expression 12 operands: lhs = Counter(2), rhs = Counter(3) -- expression 13 operands: lhs = Counter(1), rhs = Expression(14, Add) -- expression 14 operands: lhs = Counter(2), rhs = Counter(3) +- expression 13 operands: lhs = Expression(14, Add), rhs = Counter(1) +- expression 14 operands: lhs = Counter(0), rhs = Counter(7) - expression 15 operands: lhs = Expression(16, Add), rhs = Counter(1) -- expression 16 operands: lhs = Counter(0), rhs = Counter(7) -- expression 17 operands: lhs = Expression(18, Add), rhs = Counter(1) -- expression 18 operands: lhs = Expression(19, Add), rhs = Counter(7) -- expression 19 operands: lhs = Counter(0), rhs = Counter(6) +- expression 16 operands: lhs = Expression(17, Add), rhs = Counter(7) +- expression 17 operands: lhs = Counter(0), rhs = Counter(6) Number of file 0 mappings: 20 - Code(Counter(0)) at (prev + 34, 1) to (start + 1, 9) - MCDCDecision { bitmap_idx: 9, conditions_num: 2 } at (prev + 1, 8) to (start + 0, 75) @@ -149,29 +144,28 @@ Number of file 0 mappings: 20 false = (c1 - c2) - Code(Expression(2, Sub)) at (prev + 0, 21) to (start + 0, 22) = (c1 - c2) -- MCDCBranch { true: Counter(3), false: Expression(13, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 21) to (start + 0, 22) +- MCDCBranch { true: Counter(3), false: Expression(11, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 21) to (start + 0, 22) true = c3 false = (c1 - (c2 + c3)) -- Code(Expression(14, Add)) at (prev + 0, 28) to (start + 0, 29) +- Code(Expression(12, Add)) at (prev + 0, 28) to (start + 0, 29) = (c2 + c3) - MCDCDecision { bitmap_idx: 6, conditions_num: 2 } at (prev + 0, 28) to (start + 0, 34) - MCDCBranch { true: Counter(4), false: Expression(6, Sub), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 28) to (start + 0, 29) true = c4 false = ((c2 + c3) - c4) - Code(Counter(4)) at (prev + 0, 33) to (start + 0, 34) -- MCDCBranch { true: Expression(9, Sub), false: Counter(5), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 33) to (start + 0, 34) - true = (c4 - c5) - false = c5 -- Code(Expression(9, Sub)) at (prev + 0, 37) to (start + 0, 41) - = (c4 - c5) -- Code(Expression(10, Sub)) at (prev + 0, 51) to (start + 0, 56) - = (((c2 + c3) + c5) - c4) -- Code(Expression(13, Sub)) at (prev + 0, 68) to (start + 0, 73) +- MCDCBranch { true: Counter(5), false: Expression(8, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 33) to (start + 0, 34) + true = c5 + false = (c4 - c5) +- Code(Counter(5)) at (prev + 0, 37) to (start + 0, 41) +- Code(Expression(9, Sub)) at (prev + 0, 51) to (start + 0, 56) + = ((c2 + c3) - c5) +- Code(Expression(11, Sub)) at (prev + 0, 68) to (start + 0, 73) = (c1 - (c2 + c3)) - Code(Counter(6)) at (prev + 0, 76) to (start + 2, 6) -- Code(Expression(15, Sub)) at (prev + 2, 12) to (start + 2, 6) +- Code(Expression(13, Sub)) at (prev + 2, 12) to (start + 2, 6) = ((c0 + c7) - c1) -- Code(Expression(17, Sub)) at (prev + 3, 1) to (start + 0, 2) +- Code(Expression(15, Sub)) at (prev + 3, 1) to (start + 0, 2) = (((c0 + c6) + c7) - c1) Highest counter ID seen: c7 diff --git a/tests/coverage/mcdc/non_control_flow.cov-map b/tests/coverage/mcdc/non_control_flow.cov-map index 0edeff9a586..c282d53c5ac 100644 --- a/tests/coverage/mcdc/non_control_flow.cov-map +++ b/tests/coverage/mcdc/non_control_flow.cov-map @@ -1,124 +1,107 @@ Function name: non_control_flow::assign_3 -Raw bytes (89): 0x[01, 01, 09, 07, 11, 0b, 0d, 05, 09, 01, 05, 01, 05, 01, 23, 05, 11, 01, 23, 05, 11, 0a, 01, 16, 01, 00, 28, 03, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 04, 03, 00, 0d, 00, 18, 30, 05, 12, 01, 00, 02, 00, 0d, 00, 0e, 12, 00, 12, 00, 13, 30, 1e, 11, 02, 03, 00, 00, 12, 00, 13, 1e, 00, 17, 00, 18, 30, 09, 0d, 03, 00, 00, 00, 17, 00, 18, 03, 01, 05, 01, 02] +Raw bytes (79): 0x[01, 01, 04, 01, 05, 01, 0b, 05, 09, 09, 0d, 0a, 01, 16, 01, 00, 28, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 04, 03, 00, 0d, 00, 18, 30, 05, 02, 01, 00, 02, 00, 0d, 00, 0e, 02, 00, 12, 00, 13, 30, 09, 06, 02, 03, 00, 00, 12, 00, 13, 09, 00, 17, 00, 18, 30, 0d, 0e, 03, 00, 00, 00, 17, 00, 18, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 9 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(4) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(3) +Number of expressions: 4 +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) - expression 2 operands: lhs = Counter(1), rhs = Counter(2) -- expression 3 operands: lhs = Counter(0), rhs = Counter(1) -- expression 4 operands: lhs = Counter(0), rhs = Counter(1) -- expression 5 operands: lhs = Counter(0), rhs = Expression(8, Add) -- expression 6 operands: lhs = Counter(1), rhs = Counter(4) -- expression 7 operands: lhs = Counter(0), rhs = Expression(8, Add) -- expression 8 operands: lhs = Counter(1), rhs = Counter(4) +- expression 3 operands: lhs = Counter(2), rhs = Counter(3) Number of file 0 mappings: 10 - Code(Counter(0)) at (prev + 22, 1) to (start + 0, 40) -- Code(Expression(0, Add)) at (prev + 1, 9) to (start + 0, 10) - = (((c1 + c2) + c3) + c4) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) - MCDCDecision { bitmap_idx: 4, conditions_num: 3 } at (prev + 0, 13) to (start + 0, 24) -- MCDCBranch { true: Counter(1), false: Expression(4, Sub), condition_id: 1, true_next_id: 0, false_next_id: 2 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(1), false: Expression(0, Sub), condition_id: 1, true_next_id: 0, false_next_id: 2 } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) -- Code(Expression(4, Sub)) at (prev + 0, 18) to (start + 0, 19) +- Code(Expression(0, Sub)) at (prev + 0, 18) to (start + 0, 19) = (c0 - c1) -- MCDCBranch { true: Expression(7, Sub), false: Counter(4), condition_id: 2, true_next_id: 3, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) - true = (c0 - (c1 + c4)) - false = c4 -- Code(Expression(7, Sub)) at (prev + 0, 23) to (start + 0, 24) - = (c0 - (c1 + c4)) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 3, true_next_id: 0, false_next_id: 0 } at (prev + 0, 23) to (start + 0, 24) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 3, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) true = c2 - false = c3 -- Code(Expression(0, Add)) at (prev + 1, 5) to (start + 1, 2) - = (((c1 + c2) + c3) + c4) -Highest counter ID seen: c4 + false = (c0 - (c1 + c2)) +- Code(Counter(2)) at (prev + 0, 23) to (start + 0, 24) +- MCDCBranch { true: Counter(3), false: Expression(3, Sub), condition_id: 3, true_next_id: 0, false_next_id: 0 } at (prev + 0, 23) to (start + 0, 24) + true = c3 + false = (c2 - c3) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c3 Function name: non_control_flow::assign_3_bis -Raw bytes (81): 0x[01, 01, 05, 07, 11, 09, 0d, 01, 05, 05, 09, 01, 09, 0a, 01, 1b, 01, 00, 2c, 03, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 05, 03, 00, 0d, 00, 18, 30, 05, 0a, 01, 03, 02, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 30, 09, 0e, 03, 00, 02, 00, 12, 00, 13, 12, 00, 17, 00, 18, 30, 0d, 11, 02, 00, 00, 00, 17, 00, 18, 03, 01, 05, 01, 02] +Raw bytes (81): 0x[01, 01, 05, 01, 05, 05, 09, 01, 09, 01, 13, 09, 0d, 0a, 01, 1b, 01, 00, 2c, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 05, 03, 00, 0d, 00, 18, 30, 05, 02, 01, 03, 02, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 30, 09, 06, 03, 00, 02, 00, 12, 00, 13, 0a, 00, 17, 00, 18, 30, 0d, 0e, 02, 00, 00, 00, 17, 00, 18, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 5 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(4) -- expression 1 operands: lhs = Counter(2), rhs = Counter(3) -- expression 2 operands: lhs = Counter(0), rhs = Counter(1) -- expression 3 operands: lhs = Counter(1), rhs = Counter(2) -- expression 4 operands: lhs = Counter(0), rhs = Counter(2) +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(0), rhs = Counter(2) +- expression 3 operands: lhs = Counter(0), rhs = Expression(4, Add) +- expression 4 operands: lhs = Counter(2), rhs = Counter(3) Number of file 0 mappings: 10 - Code(Counter(0)) at (prev + 27, 1) to (start + 0, 44) -- Code(Expression(0, Add)) at (prev + 1, 9) to (start + 0, 10) - = ((c2 + c3) + c4) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) - MCDCDecision { bitmap_idx: 5, conditions_num: 3 } at (prev + 0, 13) to (start + 0, 24) -- MCDCBranch { true: Counter(1), false: Expression(2, Sub), condition_id: 1, true_next_id: 3, false_next_id: 2 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(1), false: Expression(0, Sub), condition_id: 1, true_next_id: 3, false_next_id: 2 } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 18) to (start + 0, 19) -- MCDCBranch { true: Counter(2), false: Expression(3, Sub), condition_id: 3, true_next_id: 0, false_next_id: 2 } at (prev + 0, 18) to (start + 0, 19) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 3, true_next_id: 0, false_next_id: 2 } at (prev + 0, 18) to (start + 0, 19) true = c2 false = (c1 - c2) -- Code(Expression(4, Sub)) at (prev + 0, 23) to (start + 0, 24) +- Code(Expression(2, Sub)) at (prev + 0, 23) to (start + 0, 24) = (c0 - c2) -- MCDCBranch { true: Counter(3), false: Counter(4), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 23) to (start + 0, 24) +- MCDCBranch { true: Counter(3), false: Expression(3, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 23) to (start + 0, 24) true = c3 - false = c4 -- Code(Expression(0, Add)) at (prev + 1, 5) to (start + 1, 2) - = ((c2 + c3) + c4) -Highest counter ID seen: c4 + false = (c0 - (c2 + c3)) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c3 Function name: non_control_flow::assign_and -Raw bytes (64): 0x[01, 01, 04, 07, 05, 0b, 0d, 01, 09, 01, 05, 08, 01, 0c, 01, 00, 21, 02, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 03, 02, 00, 0d, 00, 13, 30, 05, 0e, 01, 02, 00, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 30, 09, 0d, 02, 00, 00, 00, 12, 00, 13, 02, 01, 05, 01, 02] +Raw bytes (60): 0x[01, 01, 02, 01, 05, 05, 09, 08, 01, 0c, 01, 00, 21, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 03, 02, 00, 0d, 00, 13, 30, 05, 02, 01, 02, 00, 00, 0d, 00, 0e, 05, 00, 12, 00, 13, 30, 09, 06, 02, 00, 00, 00, 12, 00, 13, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(3) -- expression 2 operands: lhs = Counter(0), rhs = Counter(2) -- expression 3 operands: lhs = Counter(0), rhs = Counter(1) +Number of expressions: 2 +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 12, 1) to (start + 0, 33) -- Code(Expression(0, Sub)) at (prev + 1, 9) to (start + 0, 10) - = (((c0 + c2) + c3) - c1) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 0, 13) to (start + 0, 19) -- MCDCBranch { true: Counter(1), false: Expression(3, Sub), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(1), false: Expression(0, Sub), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 18) to (start + 0, 19) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) true = c2 - false = c3 -- Code(Expression(0, Sub)) at (prev + 1, 5) to (start + 1, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 + false = (c1 - c2) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c2 Function name: non_control_flow::assign_or -Raw bytes (64): 0x[01, 01, 04, 07, 0d, 05, 09, 01, 05, 01, 05, 08, 01, 11, 01, 00, 20, 03, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 03, 02, 00, 0d, 00, 13, 30, 05, 0e, 01, 00, 02, 00, 0d, 00, 0e, 0e, 00, 12, 00, 13, 30, 09, 0d, 02, 00, 00, 00, 12, 00, 13, 03, 01, 05, 01, 02] +Raw bytes (62): 0x[01, 01, 03, 01, 05, 01, 0b, 05, 09, 08, 01, 11, 01, 00, 20, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 03, 02, 00, 0d, 00, 13, 30, 05, 02, 01, 00, 02, 00, 0d, 00, 0e, 02, 00, 12, 00, 13, 30, 09, 06, 02, 00, 00, 00, 12, 00, 13, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(3) -- expression 1 operands: lhs = Counter(1), rhs = Counter(2) -- expression 2 operands: lhs = Counter(0), rhs = Counter(1) -- expression 3 operands: lhs = Counter(0), rhs = Counter(1) +Number of expressions: 3 +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(0), rhs = Expression(2, Add) +- expression 2 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 8 - Code(Counter(0)) at (prev + 17, 1) to (start + 0, 32) -- Code(Expression(0, Add)) at (prev + 1, 9) to (start + 0, 10) - = ((c1 + c2) + c3) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 0, 13) to (start + 0, 19) -- MCDCBranch { true: Counter(1), false: Expression(3, Sub), condition_id: 1, true_next_id: 0, false_next_id: 2 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(1), false: Expression(0, Sub), condition_id: 1, true_next_id: 0, false_next_id: 2 } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) -- Code(Expression(3, Sub)) at (prev + 0, 18) to (start + 0, 19) +- Code(Expression(0, Sub)) at (prev + 0, 18) to (start + 0, 19) = (c0 - c1) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 18) to (start + 0, 19) true = c2 - false = c3 -- Code(Expression(0, Add)) at (prev + 1, 5) to (start + 1, 2) - = ((c1 + c2) + c3) -Highest counter ID seen: c3 + false = (c0 - (c1 + c2)) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c2 Function name: non_control_flow::foo Raw bytes (9): 0x[01, 01, 00, 01, 01, 25, 01, 02, 02] @@ -130,14 +113,12 @@ Number of file 0 mappings: 1 Highest counter ID seen: c0 Function name: non_control_flow::func_call -Raw bytes (54): 0x[01, 01, 04, 01, 05, 0b, 05, 0f, 0d, 01, 09, 06, 01, 29, 01, 01, 0a, 28, 03, 02, 01, 09, 00, 0f, 30, 05, 02, 01, 02, 00, 00, 09, 00, 0a, 05, 00, 0e, 00, 0f, 30, 09, 0d, 02, 00, 00, 00, 0e, 00, 0f, 06, 01, 01, 00, 02] +Raw bytes (50): 0x[01, 01, 02, 01, 05, 05, 09, 06, 01, 29, 01, 01, 0a, 28, 03, 02, 01, 09, 00, 0f, 30, 05, 02, 01, 02, 00, 00, 09, 00, 0a, 05, 00, 0e, 00, 0f, 30, 09, 06, 02, 00, 00, 00, 0e, 00, 0f, 01, 01, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 4 +Number of expressions: 2 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(1) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(3) -- expression 3 operands: lhs = Counter(0), rhs = Counter(2) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) Number of file 0 mappings: 6 - Code(Counter(0)) at (prev + 41, 1) to (start + 1, 10) - MCDCDecision { bitmap_idx: 3, conditions_num: 2 } at (prev + 1, 9) to (start + 0, 15) @@ -145,66 +126,46 @@ Number of file 0 mappings: 6 true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 14) to (start + 0, 15) -- MCDCBranch { true: Counter(2), false: Counter(3), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 14) to (start + 0, 15) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 0, false_next_id: 0 } at (prev + 0, 14) to (start + 0, 15) true = c2 - false = c3 -- Code(Expression(1, Sub)) at (prev + 1, 1) to (start + 0, 2) - = (((c0 + c2) + c3) - c1) -Highest counter ID seen: c3 + false = (c1 - c2) +- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2) +Highest counter ID seen: c2 Function name: non_control_flow::right_comb_tree -Raw bytes (139): 0x[01, 01, 13, 07, 05, 0b, 19, 0f, 15, 13, 11, 17, 0d, 01, 09, 01, 05, 05, 09, 05, 09, 05, 4b, 09, 0d, 05, 4b, 09, 0d, 05, 47, 4b, 11, 09, 0d, 05, 47, 4b, 11, 09, 0d, 0e, 01, 20, 01, 00, 41, 02, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 06, 05, 00, 0d, 00, 2a, 30, 05, 1a, 01, 02, 00, 00, 0d, 00, 0e, 05, 00, 13, 00, 14, 30, 22, 09, 02, 03, 00, 00, 13, 00, 14, 22, 00, 19, 00, 1a, 30, 2e, 0d, 03, 04, 00, 00, 19, 00, 1a, 2e, 00, 1f, 00, 20, 30, 42, 11, 04, 05, 00, 00, 1f, 00, 20, 42, 00, 24, 00, 27, 30, 15, 19, 05, 00, 00, 00, 24, 00, 27, 02, 01, 05, 01, 02] +Raw bytes (111): 0x[01, 01, 05, 01, 05, 05, 09, 09, 0d, 0d, 11, 11, 15, 0e, 01, 20, 01, 00, 41, 01, 01, 09, 00, 0a, 01, 00, 0d, 00, 0e, 28, 06, 05, 00, 0d, 00, 2a, 30, 05, 02, 01, 02, 00, 00, 0d, 00, 0e, 05, 00, 13, 00, 14, 30, 09, 06, 02, 03, 00, 00, 13, 00, 14, 09, 00, 19, 00, 1a, 30, 0d, 0a, 03, 04, 00, 00, 19, 00, 1a, 0d, 00, 1f, 00, 20, 30, 11, 0e, 04, 05, 00, 00, 1f, 00, 20, 11, 00, 24, 00, 27, 30, 15, 12, 05, 00, 00, 00, 24, 00, 27, 01, 01, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 19 -- expression 0 operands: lhs = Expression(1, Add), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(6) -- expression 2 operands: lhs = Expression(3, Add), rhs = Counter(5) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(4) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(3) -- expression 5 operands: lhs = Counter(0), rhs = Counter(2) -- expression 6 operands: lhs = Counter(0), rhs = Counter(1) -- expression 7 operands: lhs = Counter(1), rhs = Counter(2) -- expression 8 operands: lhs = Counter(1), rhs = Counter(2) -- expression 9 operands: lhs = Counter(1), rhs = Expression(18, Add) -- expression 10 operands: lhs = Counter(2), rhs = Counter(3) -- expression 11 operands: lhs = Counter(1), rhs = Expression(18, Add) -- expression 12 operands: lhs = Counter(2), rhs = Counter(3) -- expression 13 operands: lhs = Counter(1), rhs = Expression(17, Add) -- expression 14 operands: lhs = Expression(18, Add), rhs = Counter(4) -- expression 15 operands: lhs = Counter(2), rhs = Counter(3) -- expression 16 operands: lhs = Counter(1), rhs = Expression(17, Add) -- expression 17 operands: lhs = Expression(18, Add), rhs = Counter(4) -- expression 18 operands: lhs = Counter(2), rhs = Counter(3) +Number of expressions: 5 +- expression 0 operands: lhs = Counter(0), rhs = Counter(1) +- expression 1 operands: lhs = Counter(1), rhs = Counter(2) +- expression 2 operands: lhs = Counter(2), rhs = Counter(3) +- expression 3 operands: lhs = Counter(3), rhs = Counter(4) +- expression 4 operands: lhs = Counter(4), rhs = Counter(5) Number of file 0 mappings: 14 - Code(Counter(0)) at (prev + 32, 1) to (start + 0, 65) -- Code(Expression(0, Sub)) at (prev + 1, 9) to (start + 0, 10) - = ((((((c0 + c2) + c3) + c4) + c5) + c6) - c1) +- Code(Counter(0)) at (prev + 1, 9) to (start + 0, 10) - Code(Counter(0)) at (prev + 0, 13) to (start + 0, 14) - MCDCDecision { bitmap_idx: 6, conditions_num: 5 } at (prev + 0, 13) to (start + 0, 42) -- MCDCBranch { true: Counter(1), false: Expression(6, Sub), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) +- MCDCBranch { true: Counter(1), false: Expression(0, Sub), condition_id: 1, true_next_id: 2, false_next_id: 0 } at (prev + 0, 13) to (start + 0, 14) true = c1 false = (c0 - c1) - Code(Counter(1)) at (prev + 0, 19) to (start + 0, 20) -- MCDCBranch { true: Expression(8, Sub), false: Counter(2), condition_id: 2, true_next_id: 3, false_next_id: 0 } at (prev + 0, 19) to (start + 0, 20) - true = (c1 - c2) - false = c2 -- Code(Expression(8, Sub)) at (prev + 0, 25) to (start + 0, 26) - = (c1 - c2) -- MCDCBranch { true: Expression(11, Sub), false: Counter(3), condition_id: 3, true_next_id: 4, false_next_id: 0 } at (prev + 0, 25) to (start + 0, 26) - true = (c1 - (c2 + c3)) - false = c3 -- Code(Expression(11, Sub)) at (prev + 0, 31) to (start + 0, 32) - = (c1 - (c2 + c3)) -- MCDCBranch { true: Expression(16, Sub), false: Counter(4), condition_id: 4, true_next_id: 5, false_next_id: 0 } at (prev + 0, 31) to (start + 0, 32) - true = (c1 - ((c2 + c3) + c4)) - false = c4 -- Code(Expression(16, Sub)) at (prev + 0, 36) to (start + 0, 39) - = (c1 - ((c2 + c3) + c4)) -- MCDCBranch { true: Counter(5), false: Counter(6), condition_id: 5, true_next_id: 0, false_next_id: 0 } at (prev + 0, 36) to (start + 0, 39) +- MCDCBranch { true: Counter(2), false: Expression(1, Sub), condition_id: 2, true_next_id: 3, false_next_id: 0 } at (prev + 0, 19) to (start + 0, 20) + true = c2 + false = (c1 - c2) +- Code(Counter(2)) at (prev + 0, 25) to (start + 0, 26) +- MCDCBranch { true: Counter(3), false: Expression(2, Sub), condition_id: 3, true_next_id: 4, false_next_id: 0 } at (prev + 0, 25) to (start + 0, 26) + true = c3 + false = (c2 - c3) +- Code(Counter(3)) at (prev + 0, 31) to (start + 0, 32) +- MCDCBranch { true: Counter(4), false: Expression(3, Sub), condition_id: 4, true_next_id: 5, false_next_id: 0 } at (prev + 0, 31) to (start + 0, 32) + true = c4 + false = (c3 - c4) +- Code(Counter(4)) at (prev + 0, 36) to (start + 0, 39) +- MCDCBranch { true: Counter(5), false: Expression(4, Sub), condition_id: 5, true_next_id: 0, false_next_id: 0 } at (prev + 0, 36) to (start + 0, 39) true = c5 - false = c6 -- Code(Expression(0, Sub)) at (prev + 1, 5) to (start + 1, 2) - = ((((((c0 + c2) + c3) + c4) + c5) + c6) - c1) -Highest counter ID seen: c6 + false = (c4 - c5) +- Code(Counter(0)) at (prev + 1, 5) to (start + 1, 2) +Highest counter ID seen: c5 diff --git a/tests/coverage/try_error_result.cov-map b/tests/coverage/try_error_result.cov-map index 7fbd2cc642e..f90b73592bd 100644 --- a/tests/coverage/try_error_result.cov-map +++ b/tests/coverage/try_error_result.cov-map @@ -55,18 +55,15 @@ Number of file 0 mappings: 4 Highest counter ID seen: c1 Function name: try_error_result::test1 -Raw bytes (75): 0x[01, 01, 08, 07, 09, 01, 00, 03, 0d, 03, 13, 0d, 11, 1b, 00, 1f, 00, 0d, 15, 0b, 01, 0d, 01, 02, 17, 03, 07, 09, 00, 0e, 0a, 02, 09, 04, 1a, 11, 06, 0d, 00, 29, 15, 00, 29, 00, 2a, 00, 01, 0d, 00, 2a, 00, 00, 2a, 00, 2b, 0e, 04, 0d, 00, 2a, 00, 00, 2a, 00, 2b, 0d, 03, 05, 00, 0b, 17, 01, 01, 00, 02] +Raw bytes (69): 0x[01, 01, 05, 07, 09, 01, 00, 03, 0d, 03, 13, 0d, 11, 0b, 01, 0d, 01, 02, 17, 03, 07, 09, 00, 0e, 0a, 02, 09, 04, 1a, 11, 06, 0d, 00, 29, 15, 00, 29, 00, 2a, 00, 01, 0d, 00, 2a, 00, 00, 2a, 00, 2b, 0e, 04, 0d, 00, 2a, 00, 00, 2a, 00, 2b, 0d, 03, 05, 00, 0b, 01, 01, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 8 +Number of expressions: 5 - expression 0 operands: lhs = Expression(1, Add), rhs = Counter(2) - expression 1 operands: lhs = Counter(0), rhs = Zero - expression 2 operands: lhs = Expression(0, Add), rhs = Counter(3) - expression 3 operands: lhs = Expression(0, Add), rhs = Expression(4, Add) - expression 4 operands: lhs = Counter(3), rhs = Counter(4) -- expression 5 operands: lhs = Expression(6, Add), rhs = Zero -- expression 6 operands: lhs = Expression(7, Add), rhs = Zero -- expression 7 operands: lhs = Counter(3), rhs = Counter(5) Number of file 0 mappings: 11 - Code(Counter(0)) at (prev + 13, 1) to (start + 2, 23) - Code(Expression(0, Add)) at (prev + 7, 9) to (start + 0, 14) @@ -81,8 +78,7 @@ Number of file 0 mappings: 11 = (((c0 + Zero) + c2) - (c3 + c4)) - Code(Zero) at (prev + 0, 42) to (start + 0, 43) - Code(Counter(3)) at (prev + 3, 5) to (start + 0, 11) -- Code(Expression(5, Add)) at (prev + 1, 1) to (start + 0, 2) - = (((c3 + c5) + Zero) + Zero) +- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2) Highest counter ID seen: c5 Function name: try_error_result::test2 diff --git a/tests/coverage/unicode.cov-map b/tests/coverage/unicode.cov-map index 630ab4ce47e..0a4e367bb9e 100644 --- a/tests/coverage/unicode.cov-map +++ b/tests/coverage/unicode.cov-map @@ -1,14 +1,10 @@ Function name: unicode::main -Raw bytes (61): 0x[01, 01, 06, 01, 05, 0b, 09, 01, 11, 13, 09, 17, 11, 01, 0d, 09, 01, 0e, 01, 00, 0b, 05, 01, 09, 00, 0c, 03, 00, 10, 00, 1b, 05, 00, 1c, 00, 28, 01, 02, 08, 00, 25, 09, 00, 29, 00, 46, 0d, 00, 47, 02, 06, 06, 02, 05, 00, 06, 0e, 02, 05, 01, 02] +Raw bytes (53): 0x[01, 01, 02, 01, 05, 01, 0d, 09, 01, 0e, 01, 00, 0b, 05, 01, 09, 00, 0c, 03, 00, 10, 00, 1b, 05, 00, 1c, 00, 28, 01, 02, 08, 00, 25, 09, 00, 29, 00, 46, 0d, 00, 47, 02, 06, 06, 02, 05, 00, 06, 01, 02, 05, 01, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 6 +Number of expressions: 2 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) -- expression 1 operands: lhs = Expression(2, Add), rhs = Counter(2) -- expression 2 operands: lhs = Counter(0), rhs = Counter(4) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(2) -- expression 4 operands: lhs = Expression(5, Add), rhs = Counter(4) -- expression 5 operands: lhs = Counter(0), rhs = Counter(3) +- expression 1 operands: lhs = Counter(0), rhs = Counter(3) Number of file 0 mappings: 9 - Code(Counter(0)) at (prev + 14, 1) to (start + 0, 11) - Code(Counter(1)) at (prev + 1, 9) to (start + 0, 12) @@ -19,9 +15,8 @@ Number of file 0 mappings: 9 - Code(Counter(2)) at (prev + 0, 41) to (start + 0, 70) - Code(Counter(3)) at (prev + 0, 71) to (start + 2, 6) - Code(Expression(1, Sub)) at (prev + 2, 5) to (start + 0, 6) - = ((c0 + c4) - c2) -- Code(Expression(3, Sub)) at (prev + 2, 5) to (start + 1, 2) - = (((c0 + c3) + c4) - c2) + = (c0 - c3) +- Code(Counter(0)) at (prev + 2, 5) to (start + 1, 2) Highest counter ID seen: c3 Function name: unicode::他 (unused) diff --git a/tests/coverage/while_early_ret.cov-map b/tests/coverage/while_early_ret.cov-map index ade770597e2..554056fa801 100644 --- a/tests/coverage/while_early_ret.cov-map +++ b/tests/coverage/while_early_ret.cov-map @@ -1,12 +1,12 @@ Function name: while_early_ret::main -Raw bytes (59): 0x[01, 01, 05, 01, 05, 03, 09, 01, 09, 13, 11, 09, 0d, 09, 01, 05, 01, 01, 1b, 03, 03, 09, 02, 0a, 06, 05, 0d, 02, 0e, 0a, 06, 15, 02, 16, 0d, 04, 15, 00, 1b, 11, 04, 15, 00, 1b, 05, 03, 0a, 03, 0a, 09, 06, 05, 00, 0b, 0f, 01, 01, 00, 02] +Raw bytes (59): 0x[01, 01, 05, 01, 05, 03, 09, 01, 09, 01, 13, 09, 0d, 09, 01, 05, 01, 01, 1b, 03, 03, 09, 02, 0a, 06, 05, 0d, 02, 0e, 0a, 06, 15, 02, 16, 0d, 04, 15, 00, 1b, 0e, 04, 15, 00, 1b, 05, 03, 0a, 03, 0a, 09, 06, 05, 00, 0b, 01, 01, 01, 00, 02] Number of files: 1 - file 0 => global file 1 Number of expressions: 5 - expression 0 operands: lhs = Counter(0), rhs = Counter(1) - expression 1 operands: lhs = Expression(0, Add), rhs = Counter(2) - expression 2 operands: lhs = Counter(0), rhs = Counter(2) -- expression 3 operands: lhs = Expression(4, Add), rhs = Counter(4) +- expression 3 operands: lhs = Counter(0), rhs = Expression(4, Add) - expression 4 operands: lhs = Counter(2), rhs = Counter(3) Number of file 0 mappings: 9 - Code(Counter(0)) at (prev + 5, 1) to (start + 1, 27) @@ -17,10 +17,10 @@ Number of file 0 mappings: 9 - Code(Expression(2, Sub)) at (prev + 6, 21) to (start + 2, 22) = (c0 - c2) - Code(Counter(3)) at (prev + 4, 21) to (start + 0, 27) -- Code(Counter(4)) at (prev + 4, 21) to (start + 0, 27) +- Code(Expression(3, Sub)) at (prev + 4, 21) to (start + 0, 27) + = (c0 - (c2 + c3)) - Code(Counter(1)) at (prev + 3, 10) to (start + 3, 10) - Code(Counter(2)) at (prev + 6, 5) to (start + 0, 11) -- Code(Expression(3, Add)) at (prev + 1, 1) to (start + 0, 2) - = ((c2 + c3) + c4) -Highest counter ID seen: c4 +- Code(Counter(0)) at (prev + 1, 1) to (start + 0, 2) +Highest counter ID seen: c3 diff --git a/tests/coverage/yield.cov-map b/tests/coverage/yield.cov-map index e01ec8f9edb..868fec4b107 100644 --- a/tests/coverage/yield.cov-map +++ b/tests/coverage/yield.cov-map @@ -1,19 +1,13 @@ Function name: yield::main -Raw bytes (106): 0x[01, 01, 0b, 05, 00, 0d, 11, 0d, 23, 11, 15, 11, 15, 0d, 23, 11, 15, 0d, 23, 11, 15, 19, 1d, 25, 29, 10, 01, 07, 01, 01, 16, 01, 07, 0b, 00, 2e, 0d, 01, 27, 00, 29, 03, 01, 0e, 00, 34, 0d, 02, 0b, 00, 2e, 06, 01, 22, 00, 27, 1e, 00, 2c, 00, 2e, 23, 01, 0e, 00, 34, 1e, 03, 09, 00, 16, 1e, 08, 0b, 00, 2e, 21, 01, 27, 00, 29, 27, 01, 0e, 00, 34, 21, 02, 0b, 00, 2e, 2d, 01, 27, 00, 29, 2b, 01, 0e, 00, 34, 2d, 02, 01, 00, 02] +Raw bytes (94): 0x[01, 01, 05, 05, 00, 0d, 15, 0d, 11, 19, 1d, 25, 29, 10, 01, 07, 01, 01, 16, 01, 07, 0b, 00, 2e, 0d, 01, 27, 00, 29, 03, 01, 0e, 00, 34, 0d, 02, 0b, 00, 2e, 06, 01, 22, 00, 27, 11, 00, 2c, 00, 2e, 0a, 01, 0e, 00, 34, 11, 03, 09, 00, 16, 11, 08, 0b, 00, 2e, 21, 01, 27, 00, 29, 0f, 01, 0e, 00, 34, 21, 02, 0b, 00, 2e, 2d, 01, 27, 00, 29, 13, 01, 0e, 00, 34, 2d, 02, 01, 00, 02] Number of files: 1 - file 0 => global file 1 -Number of expressions: 11 +Number of expressions: 5 - expression 0 operands: lhs = Counter(1), rhs = Zero -- expression 1 operands: lhs = Counter(3), rhs = Counter(4) -- expression 2 operands: lhs = Counter(3), rhs = Expression(8, Add) -- expression 3 operands: lhs = Counter(4), rhs = Counter(5) -- expression 4 operands: lhs = Counter(4), rhs = Counter(5) -- expression 5 operands: lhs = Counter(3), rhs = Expression(8, Add) -- expression 6 operands: lhs = Counter(4), rhs = Counter(5) -- expression 7 operands: lhs = Counter(3), rhs = Expression(8, Add) -- expression 8 operands: lhs = Counter(4), rhs = Counter(5) -- expression 9 operands: lhs = Counter(6), rhs = Counter(7) -- expression 10 operands: lhs = Counter(9), rhs = Counter(10) +- expression 1 operands: lhs = Counter(3), rhs = Counter(5) +- expression 2 operands: lhs = Counter(3), rhs = Counter(4) +- expression 3 operands: lhs = Counter(6), rhs = Counter(7) +- expression 4 operands: lhs = Counter(9), rhs = Counter(10) Number of file 0 mappings: 16 - Code(Counter(0)) at (prev + 7, 1) to (start + 1, 22) - Code(Counter(0)) at (prev + 7, 11) to (start + 0, 46) @@ -22,21 +16,18 @@ Number of file 0 mappings: 16 = (c1 + Zero) - Code(Counter(3)) at (prev + 2, 11) to (start + 0, 46) - Code(Expression(1, Sub)) at (prev + 1, 34) to (start + 0, 39) + = (c3 - c5) +- Code(Counter(4)) at (prev + 0, 44) to (start + 0, 46) +- Code(Expression(2, Sub)) at (prev + 1, 14) to (start + 0, 52) = (c3 - c4) -- Code(Expression(7, Sub)) at (prev + 0, 44) to (start + 0, 46) - = (c3 - (c4 + c5)) -- Code(Expression(8, Add)) at (prev + 1, 14) to (start + 0, 52) - = (c4 + c5) -- Code(Expression(7, Sub)) at (prev + 3, 9) to (start + 0, 22) - = (c3 - (c4 + c5)) -- Code(Expression(7, Sub)) at (prev + 8, 11) to (start + 0, 46) - = (c3 - (c4 + c5)) +- Code(Counter(4)) at (prev + 3, 9) to (start + 0, 22) +- Code(Counter(4)) at (prev + 8, 11) to (start + 0, 46) - Code(Counter(8)) at (prev + 1, 39) to (start + 0, 41) -- Code(Expression(9, Add)) at (prev + 1, 14) to (start + 0, 52) +- Code(Expression(3, Add)) at (prev + 1, 14) to (start + 0, 52) = (c6 + c7) - Code(Counter(8)) at (prev + 2, 11) to (start + 0, 46) - Code(Counter(11)) at (prev + 1, 39) to (start + 0, 41) -- Code(Expression(10, Add)) at (prev + 1, 14) to (start + 0, 52) +- Code(Expression(4, Add)) at (prev + 1, 14) to (start + 0, 52) = (c9 + c10) - Code(Counter(11)) at (prev + 2, 1) to (start + 0, 2) Highest counter ID seen: c11