Skip to content

Commit

Permalink
coverage: Add a dedicated test for coverage of if !
Browse files Browse the repository at this point in the history
  • Loading branch information
Zalathar committed Dec 8, 2023
1 parent 5ea6256 commit d2d742c
Show file tree
Hide file tree
Showing 3 changed files with 114 additions and 0 deletions.
39 changes: 39 additions & 0 deletions tests/coverage/if_not.cov-map
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
Function name: if_not::if_not
Raw bytes (86): 0x[01, 01, 10, 01, 05, 05, 02, 3f, 09, 05, 02, 09, 3a, 3f, 09, 05, 02, 37, 0d, 09, 3a, 3f, 09, 05, 02, 0d, 32, 37, 0d, 09, 3a, 3f, 09, 05, 02, 0a, 01, 04, 01, 03, 0d, 02, 04, 05, 02, 06, 05, 02, 06, 00, 07, 3f, 04, 09, 00, 0d, 3a, 01, 05, 02, 06, 09, 02, 06, 00, 07, 37, 04, 09, 00, 0d, 32, 01, 05, 02, 06, 0d, 02, 0c, 02, 06, 2f, 03, 01, 00, 02]
Number of files: 1
- file 0 => global file 1
Number of expressions: 16
- expression 0 operands: lhs = Counter(0), rhs = Counter(1)
- expression 1 operands: lhs = Counter(1), rhs = Expression(0, Sub)
- expression 2 operands: lhs = Expression(15, Add), rhs = Counter(2)
- expression 3 operands: lhs = Counter(1), rhs = Expression(0, Sub)
- expression 4 operands: lhs = Counter(2), rhs = Expression(14, Sub)
- expression 5 operands: lhs = Expression(15, Add), rhs = Counter(2)
- expression 6 operands: lhs = Counter(1), rhs = Expression(0, Sub)
- expression 7 operands: lhs = Expression(13, Add), rhs = Counter(3)
- expression 8 operands: lhs = Counter(2), rhs = Expression(14, Sub)
- expression 9 operands: lhs = Expression(15, Add), rhs = Counter(2)
- expression 10 operands: lhs = Counter(1), rhs = Expression(0, Sub)
- expression 11 operands: lhs = Counter(3), rhs = Expression(12, Sub)
- expression 12 operands: lhs = Expression(13, Add), rhs = Counter(3)
- expression 13 operands: lhs = Counter(2), rhs = Expression(14, Sub)
- expression 14 operands: lhs = Expression(15, Add), rhs = Counter(2)
- expression 15 operands: lhs = Counter(1), rhs = Expression(0, Sub)
Number of file 0 mappings: 10
- Code(Counter(0)) at (prev + 4, 1) to (start + 3, 13)
- Code(Expression(0, Sub)) at (prev + 4, 5) to (start + 2, 6)
= (c0 - c1)
- Code(Counter(1)) at (prev + 2, 6) to (start + 0, 7)
- Code(Expression(15, Add)) at (prev + 4, 9) to (start + 0, 13)
= (c1 + (c0 - c1))
- Code(Expression(14, Sub)) at (prev + 1, 5) to (start + 2, 6)
= ((c1 + (c0 - c1)) - c2)
- Code(Counter(2)) at (prev + 2, 6) to (start + 0, 7)
- Code(Expression(13, Add)) at (prev + 4, 9) to (start + 0, 13)
= (c2 + ((c1 + (c0 - c1)) - c2))
- Code(Expression(12, Sub)) at (prev + 1, 5) to (start + 2, 6)
= ((c2 + ((c1 + (c0 - c1)) - c2)) - c3)
- Code(Counter(3)) at (prev + 2, 12) to (start + 2, 6)
- Code(Expression(11, Add)) at (prev + 3, 1) to (start + 0, 2)
= (c3 + ((c2 + ((c1 + (c0 - c1)) - c2)) - c3))

38 changes: 38 additions & 0 deletions tests/coverage/if_not.coverage
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
LL| |#![feature(coverage_attribute)]
LL| |// edition: 2021
LL| |
LL| 12|fn if_not(cond: bool) {
LL| 12| if
LL| 12| !
LL| 12| cond
LL| 4| {
LL| 4| println!("cond was false");
LL| 8| }
LL| |
LL| | if
LL| | !
LL| 12| cond
LL| 4| {
LL| 4| println!("cond was false");
LL| 8| }
LL| |
LL| | if
LL| | !
LL| 12| cond
LL| 4| {
LL| 4| println!("cond was false");
LL| 8| } else {
LL| 8| println!("cond was true");
LL| 8| }
LL| 12|}
LL| |
LL| |#[coverage(off)]
LL| |fn main() {
LL| | for _ in 0..8 {
LL| | if_not(std::hint::black_box(true));
LL| | }
LL| | for _ in 0..4 {
LL| | if_not(std::hint::black_box(false));
LL| | }
LL| |}

37 changes: 37 additions & 0 deletions tests/coverage/if_not.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
#![feature(coverage_attribute)]
// edition: 2021

fn if_not(cond: bool) {
if
!
cond
{
println!("cond was false");
}

if
!
cond
{
println!("cond was false");
}

if
!
cond
{
println!("cond was false");
} else {
println!("cond was true");
}
}

#[coverage(off)]
fn main() {
for _ in 0..8 {
if_not(std::hint::black_box(true));
}
for _ in 0..4 {
if_not(std::hint::black_box(false));
}
}

0 comments on commit d2d742c

Please sign in to comment.