a1e2c10b1f
In some cases we need to prepare a coverage expression that is the sum of an arbitrary number of other terms. This patch simplifies the code paths that build those sums. This causes some churn in the mappings, because the previous code was building its sums in a somewhat idiosyncratic order.
54 lines
2.5 KiB
Plaintext
54 lines
2.5 KiB
Plaintext
Function name: coroutine::get_u32
|
|
Raw bytes (28): 0x[01, 01, 02, 01, 05, 05, 02, 04, 01, 0b, 01, 01, 0b, 05, 01, 0e, 00, 13, 02, 00, 1d, 00, 3c, 07, 01, 01, 00, 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 = Expression(0, Sub)
|
|
Number of file 0 mappings: 4
|
|
- Code(Counter(0)) at (prev + 11, 1) to (start + 1, 11)
|
|
- Code(Counter(1)) at (prev + 1, 14) to (start + 0, 19)
|
|
- Code(Expression(0, Sub)) at (prev + 0, 29) to (start + 0, 60)
|
|
= (c0 - c1)
|
|
- Code(Expression(1, Add)) at (prev + 1, 1) to (start + 0, 2)
|
|
= (c1 + (c0 - c1))
|
|
|
|
Function name: coroutine::main
|
|
Raw bytes (65): 0x[01, 01, 08, 07, 0d, 05, 09, 11, 15, 1e, 19, 11, 15, 15, 19, 1e, 19, 11, 15, 09, 01, 0f, 01, 02, 16, 01, 07, 0b, 00, 2e, 11, 01, 2b, 00, 2d, 03, 01, 0e, 00, 35, 11, 02, 0b, 00, 2e, 1e, 01, 22, 00, 27, 1a, 00, 2c, 00, 2e, 17, 01, 0e, 00, 35, 1a, 02, 01, 00, 02]
|
|
Number of files: 1
|
|
- file 0 => global file 1
|
|
Number of expressions: 8
|
|
- 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 = Expression(7, Sub), rhs = Counter(6)
|
|
- expression 4 operands: lhs = Counter(4), rhs = Counter(5)
|
|
- expression 5 operands: lhs = Counter(5), rhs = Counter(6)
|
|
- expression 6 operands: lhs = Expression(7, Sub), rhs = Counter(6)
|
|
- expression 7 operands: lhs = Counter(4), rhs = Counter(5)
|
|
Number of file 0 mappings: 9
|
|
- Code(Counter(0)) at (prev + 15, 1) to (start + 2, 22)
|
|
- Code(Counter(0)) at (prev + 7, 11) to (start + 0, 46)
|
|
- Code(Counter(4)) at (prev + 1, 43) to (start + 0, 45)
|
|
- Code(Expression(0, Add)) at (prev + 1, 14) to (start + 0, 53)
|
|
= ((c1 + c2) + c3)
|
|
- Code(Counter(4)) at (prev + 2, 11) to (start + 0, 46)
|
|
- Code(Expression(7, Sub)) at (prev + 1, 34) to (start + 0, 39)
|
|
= (c4 - c5)
|
|
- Code(Expression(6, Sub)) at (prev + 0, 44) to (start + 0, 46)
|
|
= ((c4 - c5) - c6)
|
|
- Code(Expression(5, 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)
|
|
|
|
Function name: coroutine::main::{closure#0}
|
|
Raw bytes (14): 0x[01, 01, 00, 02, 01, 11, 1c, 01, 1f, 05, 02, 10, 01, 06]
|
|
Number of files: 1
|
|
- file 0 => global file 1
|
|
Number of expressions: 0
|
|
Number of file 0 mappings: 2
|
|
- Code(Counter(0)) at (prev + 17, 28) to (start + 1, 31)
|
|
- Code(Counter(1)) at (prev + 2, 16) to (start + 1, 6)
|
|
|