diff --git a/examples/TEALScript/puya.log b/examples/TEALScript/puya.log index 81ada02477..ddbf228ab6 100644 --- a/examples/TEALScript/puya.log +++ b/examples/TEALScript/puya.log @@ -19,11 +19,11 @@ debug: Sealing block@None: // else_body_L92 debug: Terminated block@1: // if_body_L92 debug: Sealing block@2: // after_if_else_L92 debug: Created Phi assignment: let amount#2: uint64 = undefined while trying to resolve 'amount' in block@2: // after_if_else_L92 -debug: Added amount#0 to Phi node: let amount#2: uint64 = φ(amount#0 <- block@0) in block@0: // L86 -debug: Added amount#1 to Phi node: let amount#2: uint64 = φ(amount#0 <- block@0, amount#1 <- block@1) in block@1: // if_body_L92 +debug: Added amount#0 to Phi node: let amount#2: uint64 = Phi(amount#0 <- block@0) in block@0: // L86 +debug: Added amount#1 to Phi node: let amount#2: uint64 = Phi(amount#0 <- block@0, amount#1 <- block@1) in block@1: // if_body_L92 debug: Created Phi assignment: let original_amount#1: uint64 = undefined while trying to resolve 'original_amount' in block@2: // after_if_else_L92 -debug: Added original_amount#0 to Phi node: let original_amount#1: uint64 = φ(original_amount#0 <- block@0) in block@0: // L86 -debug: Added original_amount#0 to Phi node: let original_amount#1: uint64 = φ(original_amount#0 <- block@0, original_amount#0 <- block@1) in block@1: // if_body_L92 +debug: Added original_amount#0 to Phi node: let original_amount#1: uint64 = Phi(original_amount#0 <- block@0) in block@0: // L86 +debug: Added original_amount#0 to Phi node: let original_amount#1: uint64 = Phi(original_amount#0 <- block@0, original_amount#0 <- block@1) in block@1: // if_body_L92 debug: Replacing trivial Phi node: let original_amount#1: uint64 = φ(original_amount#0 <- block@0, original_amount#0 <- block@1) (original_amount#1) with original_amount#0 debug: Deleting Phi assignment: let original_amount#1: uint64 = φ(original_amount#0 <- block@0, original_amount#0 <- block@1) debug: Replaced trivial Phi node: let original_amount#1: uint64 = φ(original_amount#0 <- block@0, original_amount#0 <- block@1) (original_amount#1) with original_amount#0 in current definition for 1 blocks diff --git a/examples/amm/puya.log b/examples/amm/puya.log index 294cab93ac..420f13d6ef 100644 --- a/examples/amm/puya.log +++ b/examples/amm/puya.log @@ -35,70 +35,70 @@ debug: Terminated block@2: // bool_true_L341 debug: Terminated block@3: // bool_false_L341 debug: Sealing block@4: // bool_merge_L341 debug: Created Phi assignment: let and_result%2#2: uint64 = undefined while trying to resolve 'and_result%2' in block@4: // bool_merge_L341 -debug: Added and_result%2#0 to Phi node: let and_result%2#2: uint64 = φ(and_result%2#0 <- block@2) in block@2: // bool_true_L341 -debug: Added and_result%2#1 to Phi node: let and_result%2#2: uint64 = φ(and_result%2#0 <- block@2, and_result%2#1 <- block@3) in block@3: // bool_false_L341 +debug: Added and_result%2#0 to Phi node: let and_result%2#2: uint64 = Phi(and_result%2#0 <- block@2) in block@2: // bool_true_L341 +debug: Added and_result%2#1 to Phi node: let and_result%2#2: uint64 = Phi(and_result%2#0 <- block@2, and_result%2#1 <- block@3) in block@3: // bool_false_L341 debug: Terminated block@4: // bool_merge_L341 debug: Sealing block@None: // if_body_L342 debug: Sealing block@None: // else_body_L342 debug: Created Phi assignment: let a_amount#1: uint64 = undefined while trying to resolve 'a_amount' in block@4: // bool_merge_L341 -debug: Added a_amount#0 to Phi node: let a_amount#1: uint64 = φ(a_amount#0 <- block@2) in block@2: // bool_true_L341 +debug: Added a_amount#0 to Phi node: let a_amount#1: uint64 = Phi(a_amount#0 <- block@2) in block@2: // bool_true_L341 debug: Created Phi assignment: let a_amount#2: uint64 = undefined while trying to resolve 'a_amount' in block@3: // bool_false_L341 -debug: Added a_amount#0 to Phi node: let a_amount#2: uint64 = φ(a_amount#0 <- block@0) in block@0: // L333 -debug: Added a_amount#0 to Phi node: let a_amount#2: uint64 = φ(a_amount#0 <- block@0, a_amount#0 <- block@1) in block@1: // and_contd_L341 +debug: Added a_amount#0 to Phi node: let a_amount#2: uint64 = Phi(a_amount#0 <- block@0) in block@0: // L333 +debug: Added a_amount#0 to Phi node: let a_amount#2: uint64 = Phi(a_amount#0 <- block@0, a_amount#0 <- block@1) in block@1: // and_contd_L341 debug: Replacing trivial Phi node: let a_amount#2: uint64 = φ(a_amount#0 <- block@0, a_amount#0 <- block@1) (a_amount#2) with a_amount#0 debug: Deleting Phi assignment: let a_amount#2: uint64 = φ(a_amount#0 <- block@0, a_amount#0 <- block@1) debug: Replaced trivial Phi node: let a_amount#2: uint64 = φ(a_amount#0 <- block@0, a_amount#0 <- block@1) (a_amount#2) with a_amount#0 in current definition for 1 blocks -debug: Added a_amount#0 to Phi node: let a_amount#1: uint64 = φ(a_amount#0 <- block@2, a_amount#0 <- block@3) in block@3: // bool_false_L341 +debug: Added a_amount#0 to Phi node: let a_amount#1: uint64 = Phi(a_amount#0 <- block@2, a_amount#0 <- block@3) in block@3: // bool_false_L341 debug: Replacing trivial Phi node: let a_amount#1: uint64 = φ(a_amount#0 <- block@2, a_amount#0 <- block@3) (a_amount#1) with a_amount#0 debug: Deleting Phi assignment: let a_amount#1: uint64 = φ(a_amount#0 <- block@2, a_amount#0 <- block@3) debug: Replaced trivial Phi node: let a_amount#1: uint64 = φ(a_amount#0 <- block@2, a_amount#0 <- block@3) (a_amount#1) with a_amount#0 in current definition for 1 blocks debug: Created Phi assignment: let b_amount#1: uint64 = undefined while trying to resolve 'b_amount' in block@4: // bool_merge_L341 -debug: Added b_amount#0 to Phi node: let b_amount#1: uint64 = φ(b_amount#0 <- block@2) in block@2: // bool_true_L341 +debug: Added b_amount#0 to Phi node: let b_amount#1: uint64 = Phi(b_amount#0 <- block@2) in block@2: // bool_true_L341 debug: Created Phi assignment: let b_amount#2: uint64 = undefined while trying to resolve 'b_amount' in block@3: // bool_false_L341 -debug: Added b_amount#0 to Phi node: let b_amount#2: uint64 = φ(b_amount#0 <- block@0) in block@0: // L333 -debug: Added b_amount#0 to Phi node: let b_amount#2: uint64 = φ(b_amount#0 <- block@0, b_amount#0 <- block@1) in block@1: // and_contd_L341 +debug: Added b_amount#0 to Phi node: let b_amount#2: uint64 = Phi(b_amount#0 <- block@0) in block@0: // L333 +debug: Added b_amount#0 to Phi node: let b_amount#2: uint64 = Phi(b_amount#0 <- block@0, b_amount#0 <- block@1) in block@1: // and_contd_L341 debug: Replacing trivial Phi node: let b_amount#2: uint64 = φ(b_amount#0 <- block@0, b_amount#0 <- block@1) (b_amount#2) with b_amount#0 debug: Deleting Phi assignment: let b_amount#2: uint64 = φ(b_amount#0 <- block@0, b_amount#0 <- block@1) debug: Replaced trivial Phi node: let b_amount#2: uint64 = φ(b_amount#0 <- block@0, b_amount#0 <- block@1) (b_amount#2) with b_amount#0 in current definition for 1 blocks -debug: Added b_amount#0 to Phi node: let b_amount#1: uint64 = φ(b_amount#0 <- block@2, b_amount#0 <- block@3) in block@3: // bool_false_L341 +debug: Added b_amount#0 to Phi node: let b_amount#1: uint64 = Phi(b_amount#0 <- block@2, b_amount#0 <- block@3) in block@3: // bool_false_L341 debug: Replacing trivial Phi node: let b_amount#1: uint64 = φ(b_amount#0 <- block@2, b_amount#0 <- block@3) (b_amount#1) with b_amount#0 debug: Deleting Phi assignment: let b_amount#1: uint64 = φ(b_amount#0 <- block@2, b_amount#0 <- block@3) debug: Replaced trivial Phi node: let b_amount#1: uint64 = φ(b_amount#0 <- block@2, b_amount#0 <- block@3) (b_amount#1) with b_amount#0 in current definition for 1 blocks debug: Terminated block@5: // if_body_L342 debug: Sealing block@6: // after_if_else_L342 debug: Created Phi assignment: let pool_balance#1: uint64 = undefined while trying to resolve 'pool_balance' in block@4: // bool_merge_L341 -debug: Added pool_balance#0 to Phi node: let pool_balance#1: uint64 = φ(pool_balance#0 <- block@2) in block@2: // bool_true_L341 +debug: Added pool_balance#0 to Phi node: let pool_balance#1: uint64 = Phi(pool_balance#0 <- block@2) in block@2: // bool_true_L341 debug: Created Phi assignment: let pool_balance#2: uint64 = undefined while trying to resolve 'pool_balance' in block@3: // bool_false_L341 -debug: Added pool_balance#0 to Phi node: let pool_balance#2: uint64 = φ(pool_balance#0 <- block@0) in block@0: // L333 -debug: Added pool_balance#0 to Phi node: let pool_balance#2: uint64 = φ(pool_balance#0 <- block@0, pool_balance#0 <- block@1) in block@1: // and_contd_L341 +debug: Added pool_balance#0 to Phi node: let pool_balance#2: uint64 = Phi(pool_balance#0 <- block@0) in block@0: // L333 +debug: Added pool_balance#0 to Phi node: let pool_balance#2: uint64 = Phi(pool_balance#0 <- block@0, pool_balance#0 <- block@1) in block@1: // and_contd_L341 debug: Replacing trivial Phi node: let pool_balance#2: uint64 = φ(pool_balance#0 <- block@0, pool_balance#0 <- block@1) (pool_balance#2) with pool_balance#0 debug: Deleting Phi assignment: let pool_balance#2: uint64 = φ(pool_balance#0 <- block@0, pool_balance#0 <- block@1) debug: Replaced trivial Phi node: let pool_balance#2: uint64 = φ(pool_balance#0 <- block@0, pool_balance#0 <- block@1) (pool_balance#2) with pool_balance#0 in current definition for 1 blocks -debug: Added pool_balance#0 to Phi node: let pool_balance#1: uint64 = φ(pool_balance#0 <- block@2, pool_balance#0 <- block@3) in block@3: // bool_false_L341 +debug: Added pool_balance#0 to Phi node: let pool_balance#1: uint64 = Phi(pool_balance#0 <- block@2, pool_balance#0 <- block@3) in block@3: // bool_false_L341 debug: Replacing trivial Phi node: let pool_balance#1: uint64 = φ(pool_balance#0 <- block@2, pool_balance#0 <- block@3) (pool_balance#1) with pool_balance#0 debug: Deleting Phi assignment: let pool_balance#1: uint64 = φ(pool_balance#0 <- block@2, pool_balance#0 <- block@3) debug: Replaced trivial Phi node: let pool_balance#1: uint64 = φ(pool_balance#0 <- block@2, pool_balance#0 <- block@3) (pool_balance#1) with pool_balance#0 in current definition for 1 blocks debug: Created Phi assignment: let a_balance#1: uint64 = undefined while trying to resolve 'a_balance' in block@4: // bool_merge_L341 -debug: Added a_balance#0 to Phi node: let a_balance#1: uint64 = φ(a_balance#0 <- block@2) in block@2: // bool_true_L341 +debug: Added a_balance#0 to Phi node: let a_balance#1: uint64 = Phi(a_balance#0 <- block@2) in block@2: // bool_true_L341 debug: Created Phi assignment: let a_balance#2: uint64 = undefined while trying to resolve 'a_balance' in block@3: // bool_false_L341 -debug: Added a_balance#0 to Phi node: let a_balance#2: uint64 = φ(a_balance#0 <- block@0) in block@0: // L333 -debug: Added a_balance#0 to Phi node: let a_balance#2: uint64 = φ(a_balance#0 <- block@0, a_balance#0 <- block@1) in block@1: // and_contd_L341 +debug: Added a_balance#0 to Phi node: let a_balance#2: uint64 = Phi(a_balance#0 <- block@0) in block@0: // L333 +debug: Added a_balance#0 to Phi node: let a_balance#2: uint64 = Phi(a_balance#0 <- block@0, a_balance#0 <- block@1) in block@1: // and_contd_L341 debug: Replacing trivial Phi node: let a_balance#2: uint64 = φ(a_balance#0 <- block@0, a_balance#0 <- block@1) (a_balance#2) with a_balance#0 debug: Deleting Phi assignment: let a_balance#2: uint64 = φ(a_balance#0 <- block@0, a_balance#0 <- block@1) debug: Replaced trivial Phi node: let a_balance#2: uint64 = φ(a_balance#0 <- block@0, a_balance#0 <- block@1) (a_balance#2) with a_balance#0 in current definition for 1 blocks -debug: Added a_balance#0 to Phi node: let a_balance#1: uint64 = φ(a_balance#0 <- block@2, a_balance#0 <- block@3) in block@3: // bool_false_L341 +debug: Added a_balance#0 to Phi node: let a_balance#1: uint64 = Phi(a_balance#0 <- block@2, a_balance#0 <- block@3) in block@3: // bool_false_L341 debug: Replacing trivial Phi node: let a_balance#1: uint64 = φ(a_balance#0 <- block@2, a_balance#0 <- block@3) (a_balance#1) with a_balance#0 debug: Deleting Phi assignment: let a_balance#1: uint64 = φ(a_balance#0 <- block@2, a_balance#0 <- block@3) debug: Replaced trivial Phi node: let a_balance#1: uint64 = φ(a_balance#0 <- block@2, a_balance#0 <- block@3) (a_balance#1) with a_balance#0 in current definition for 1 blocks debug: Created Phi assignment: let b_balance#1: uint64 = undefined while trying to resolve 'b_balance' in block@4: // bool_merge_L341 -debug: Added b_balance#0 to Phi node: let b_balance#1: uint64 = φ(b_balance#0 <- block@2) in block@2: // bool_true_L341 +debug: Added b_balance#0 to Phi node: let b_balance#1: uint64 = Phi(b_balance#0 <- block@2) in block@2: // bool_true_L341 debug: Created Phi assignment: let b_balance#2: uint64 = undefined while trying to resolve 'b_balance' in block@3: // bool_false_L341 -debug: Added b_balance#0 to Phi node: let b_balance#2: uint64 = φ(b_balance#0 <- block@0) in block@0: // L333 -debug: Added b_balance#0 to Phi node: let b_balance#2: uint64 = φ(b_balance#0 <- block@0, b_balance#0 <- block@1) in block@1: // and_contd_L341 +debug: Added b_balance#0 to Phi node: let b_balance#2: uint64 = Phi(b_balance#0 <- block@0) in block@0: // L333 +debug: Added b_balance#0 to Phi node: let b_balance#2: uint64 = Phi(b_balance#0 <- block@0, b_balance#0 <- block@1) in block@1: // and_contd_L341 debug: Replacing trivial Phi node: let b_balance#2: uint64 = φ(b_balance#0 <- block@0, b_balance#0 <- block@1) (b_balance#2) with b_balance#0 debug: Deleting Phi assignment: let b_balance#2: uint64 = φ(b_balance#0 <- block@0, b_balance#0 <- block@1) debug: Replaced trivial Phi node: let b_balance#2: uint64 = φ(b_balance#0 <- block@0, b_balance#0 <- block@1) (b_balance#2) with b_balance#0 in current definition for 1 blocks -debug: Added b_balance#0 to Phi node: let b_balance#1: uint64 = φ(b_balance#0 <- block@2, b_balance#0 <- block@3) in block@3: // bool_false_L341 +debug: Added b_balance#0 to Phi node: let b_balance#1: uint64 = Phi(b_balance#0 <- block@2, b_balance#0 <- block@3) in block@3: // bool_false_L341 debug: Replacing trivial Phi node: let b_balance#1: uint64 = φ(b_balance#0 <- block@2, b_balance#0 <- block@3) (b_balance#1) with b_balance#0 debug: Deleting Phi assignment: let b_balance#1: uint64 = φ(b_balance#0 <- block@2, b_balance#0 <- block@3) debug: Replaced trivial Phi node: let b_balance#1: uint64 = φ(b_balance#0 <- block@2, b_balance#0 <- block@3) (b_balance#1) with b_balance#0 in current definition for 1 blocks @@ -124,20 +124,20 @@ debug: Terminated block@2: // switch_case_1_L245 debug: Terminated block@3: // switch_case_default_L239 debug: Sealing block@4: // switch_case_next_L239 debug: Created Phi assignment: let swap_xfer#1: uint64 = undefined while trying to resolve 'swap_xfer' in block@4: // switch_case_next_L239 -debug: Added swap_xfer#0 to Phi node: let swap_xfer#1: uint64 = φ(swap_xfer#0 <- block@1) in block@1: // switch_case_0_L241 -debug: Added swap_xfer#0 to Phi node: let swap_xfer#1: uint64 = φ(swap_xfer#0 <- block@1, swap_xfer#0 <- block@2) in block@2: // switch_case_1_L245 +debug: Added swap_xfer#0 to Phi node: let swap_xfer#1: uint64 = Phi(swap_xfer#0 <- block@1) in block@1: // switch_case_0_L241 +debug: Added swap_xfer#0 to Phi node: let swap_xfer#1: uint64 = Phi(swap_xfer#0 <- block@1, swap_xfer#0 <- block@2) in block@2: // switch_case_1_L245 debug: Replacing trivial Phi node: let swap_xfer#1: uint64 = φ(swap_xfer#0 <- block@1, swap_xfer#0 <- block@2) (swap_xfer#1) with swap_xfer#0 debug: Deleting Phi assignment: let swap_xfer#1: uint64 = φ(swap_xfer#0 <- block@1, swap_xfer#0 <- block@2) debug: Replaced trivial Phi node: let swap_xfer#1: uint64 = φ(swap_xfer#0 <- block@1, swap_xfer#0 <- block@2) (swap_xfer#1) with swap_xfer#0 in current definition for 1 blocks debug: Created Phi assignment: let in_supply#2: uint64 = undefined while trying to resolve 'in_supply' in block@4: // switch_case_next_L239 -debug: Added in_supply#0 to Phi node: let in_supply#2: uint64 = φ(in_supply#0 <- block@1) in block@1: // switch_case_0_L241 -debug: Added in_supply#1 to Phi node: let in_supply#2: uint64 = φ(in_supply#0 <- block@1, in_supply#1 <- block@2) in block@2: // switch_case_1_L245 +debug: Added in_supply#0 to Phi node: let in_supply#2: uint64 = Phi(in_supply#0 <- block@1) in block@1: // switch_case_0_L241 +debug: Added in_supply#1 to Phi node: let in_supply#2: uint64 = Phi(in_supply#0 <- block@1, in_supply#1 <- block@2) in block@2: // switch_case_1_L245 debug: Created Phi assignment: let out_supply#2: uint64 = undefined while trying to resolve 'out_supply' in block@4: // switch_case_next_L239 -debug: Added out_supply#0 to Phi node: let out_supply#2: uint64 = φ(out_supply#0 <- block@1) in block@1: // switch_case_0_L241 -debug: Added out_supply#1 to Phi node: let out_supply#2: uint64 = φ(out_supply#0 <- block@1, out_supply#1 <- block@2) in block@2: // switch_case_1_L245 +debug: Added out_supply#0 to Phi node: let out_supply#2: uint64 = Phi(out_supply#0 <- block@1) in block@1: // switch_case_0_L241 +debug: Added out_supply#1 to Phi node: let out_supply#2: uint64 = Phi(out_supply#0 <- block@1, out_supply#1 <- block@2) in block@2: // switch_case_1_L245 debug: Created Phi assignment: let out_asset#2: uint64 = undefined while trying to resolve 'out_asset' in block@4: // switch_case_next_L239 -debug: Added out_asset#0 to Phi node: let out_asset#2: uint64 = φ(out_asset#0 <- block@1) in block@1: // switch_case_0_L241 -debug: Added out_asset#1 to Phi node: let out_asset#2: uint64 = φ(out_asset#0 <- block@1, out_asset#1 <- block@2) in block@2: // switch_case_1_L245 +debug: Added out_asset#0 to Phi node: let out_asset#2: uint64 = Phi(out_asset#0 <- block@1) in block@1: // switch_case_0_L241 +debug: Added out_asset#1 to Phi node: let out_asset#2: uint64 = Phi(out_asset#0 <- block@1, out_asset#1 <- block@2) in block@2: // switch_case_1_L245 debug: Terminated block@4: // switch_case_next_L239 debug: Sealing block@0: // L360 debug: Terminated block@0: // L360 diff --git a/examples/arc4_types/puya.log b/examples/arc4_types/puya.log index 6cea437111..fc3634a040 100644 --- a/examples/arc4_types/puya.log +++ b/examples/arc4_types/puya.log @@ -39,66 +39,66 @@ debug: Terminated block@11: // ternary_true_L39 debug: Terminated block@12: // ternary_false_L39 debug: Sealing block@13: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%63#2: bytes = undefined while trying to resolve 'ternary_result%63' in block@13: // ternary_merge_L39 -debug: Added ternary_result%63#0 to Phi node: let ternary_result%63#2: bytes = φ(ternary_result%63#0 <- block@11) in block@11: // ternary_true_L39 -debug: Added ternary_result%63#1 to Phi node: let ternary_result%63#2: bytes = φ(ternary_result%63#0 <- block@11, ternary_result%63#1 <- block@12) in block@12: // ternary_false_L39 +debug: Added ternary_result%63#0 to Phi node: let ternary_result%63#2: bytes = Phi(ternary_result%63#0 <- block@11) in block@11: // ternary_true_L39 +debug: Added ternary_result%63#1 to Phi node: let ternary_result%63#2: bytes = Phi(ternary_result%63#0 <- block@11, ternary_result%63#1 <- block@12) in block@12: // ternary_false_L39 debug: Terminated block@13: // ternary_merge_L39 debug: Sealing block@14: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%61#2: bytes = undefined while trying to resolve 'ternary_result%61' in block@14: // ternary_merge_L39 -debug: Added ternary_result%61#0 to Phi node: let ternary_result%61#2: bytes = φ(ternary_result%61#0 <- block@9) in block@9: // ternary_true_L39 -debug: Added ternary_result%61#1 to Phi node: let ternary_result%61#2: bytes = φ(ternary_result%61#0 <- block@9, ternary_result%61#1 <- block@13) in block@13: // ternary_merge_L39 +debug: Added ternary_result%61#0 to Phi node: let ternary_result%61#2: bytes = Phi(ternary_result%61#0 <- block@9) in block@9: // ternary_true_L39 +debug: Added ternary_result%61#1 to Phi node: let ternary_result%61#2: bytes = Phi(ternary_result%61#0 <- block@9, ternary_result%61#1 <- block@13) in block@13: // ternary_merge_L39 debug: Terminated block@14: // ternary_merge_L39 debug: Sealing block@15: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%59#2: bytes = undefined while trying to resolve 'ternary_result%59' in block@15: // ternary_merge_L39 -debug: Added ternary_result%59#0 to Phi node: let ternary_result%59#2: bytes = φ(ternary_result%59#0 <- block@7) in block@7: // ternary_true_L39 -debug: Added ternary_result%59#1 to Phi node: let ternary_result%59#2: bytes = φ(ternary_result%59#0 <- block@7, ternary_result%59#1 <- block@14) in block@14: // ternary_merge_L39 +debug: Added ternary_result%59#0 to Phi node: let ternary_result%59#2: bytes = Phi(ternary_result%59#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added ternary_result%59#1 to Phi node: let ternary_result%59#2: bytes = Phi(ternary_result%59#0 <- block@7, ternary_result%59#1 <- block@14) in block@14: // ternary_merge_L39 debug: Terminated block@15: // ternary_merge_L39 debug: Sealing block@16: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%57#2: bytes = undefined while trying to resolve 'ternary_result%57' in block@16: // ternary_merge_L39 -debug: Added ternary_result%57#0 to Phi node: let ternary_result%57#2: bytes = φ(ternary_result%57#0 <- block@5) in block@5: // ternary_true_L39 -debug: Added ternary_result%57#1 to Phi node: let ternary_result%57#2: bytes = φ(ternary_result%57#0 <- block@5, ternary_result%57#1 <- block@15) in block@15: // ternary_merge_L39 +debug: Added ternary_result%57#0 to Phi node: let ternary_result%57#2: bytes = Phi(ternary_result%57#0 <- block@5) in block@5: // ternary_true_L39 +debug: Added ternary_result%57#1 to Phi node: let ternary_result%57#2: bytes = Phi(ternary_result%57#0 <- block@5, ternary_result%57#1 <- block@15) in block@15: // ternary_merge_L39 debug: Terminated block@16: // ternary_merge_L39 debug: Sealing block@17: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%55#2: bytes = undefined while trying to resolve 'ternary_result%55' in block@17: // ternary_merge_L39 -debug: Added ternary_result%55#0 to Phi node: let ternary_result%55#2: bytes = φ(ternary_result%55#0 <- block@3) in block@3: // ternary_true_L39 -debug: Added ternary_result%55#1 to Phi node: let ternary_result%55#2: bytes = φ(ternary_result%55#0 <- block@3, ternary_result%55#1 <- block@16) in block@16: // ternary_merge_L39 +debug: Added ternary_result%55#0 to Phi node: let ternary_result%55#2: bytes = Phi(ternary_result%55#0 <- block@3) in block@3: // ternary_true_L39 +debug: Added ternary_result%55#1 to Phi node: let ternary_result%55#2: bytes = Phi(ternary_result%55#0 <- block@3, ternary_result%55#1 <- block@16) in block@16: // ternary_merge_L39 debug: Terminated block@17: // ternary_merge_L39 debug: Sealing block@18: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%53#2: bytes = undefined while trying to resolve 'ternary_result%53' in block@18: // ternary_merge_L39 -debug: Added ternary_result%53#0 to Phi node: let ternary_result%53#2: bytes = φ(ternary_result%53#0 <- block@1) in block@1: // ternary_true_L39 -debug: Added ternary_result%53#1 to Phi node: let ternary_result%53#2: bytes = φ(ternary_result%53#0 <- block@1, ternary_result%53#1 <- block@17) in block@17: // ternary_merge_L39 +debug: Added ternary_result%53#0 to Phi node: let ternary_result%53#2: bytes = Phi(ternary_result%53#0 <- block@1) in block@1: // ternary_true_L39 +debug: Added ternary_result%53#1 to Phi node: let ternary_result%53#2: bytes = Phi(ternary_result%53#0 <- block@1, ternary_result%53#1 <- block@17) in block@17: // ternary_merge_L39 debug: Created Phi assignment: let c#1: bytes = undefined while trying to resolve 'c' in block@18: // ternary_merge_L39 -debug: Added c#0 to Phi node: let c#1: bytes = φ(c#0 <- block@1) in block@1: // ternary_true_L39 +debug: Added c#0 to Phi node: let c#1: bytes = Phi(c#0 <- block@1) in block@1: // ternary_true_L39 debug: Created Phi assignment: let c#2: bytes = undefined while trying to resolve 'c' in block@17: // ternary_merge_L39 -debug: Added c#0 to Phi node: let c#2: bytes = φ(c#0 <- block@3) in block@3: // ternary_true_L39 +debug: Added c#0 to Phi node: let c#2: bytes = Phi(c#0 <- block@3) in block@3: // ternary_true_L39 debug: Created Phi assignment: let c#3: bytes = undefined while trying to resolve 'c' in block@16: // ternary_merge_L39 -debug: Added c#0 to Phi node: let c#3: bytes = φ(c#0 <- block@5) in block@5: // ternary_true_L39 +debug: Added c#0 to Phi node: let c#3: bytes = Phi(c#0 <- block@5) in block@5: // ternary_true_L39 debug: Created Phi assignment: let c#4: bytes = undefined while trying to resolve 'c' in block@15: // ternary_merge_L39 -debug: Added c#0 to Phi node: let c#4: bytes = φ(c#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added c#0 to Phi node: let c#4: bytes = Phi(c#0 <- block@7) in block@7: // ternary_true_L39 debug: Created Phi assignment: let c#5: bytes = undefined while trying to resolve 'c' in block@14: // ternary_merge_L39 -debug: Added c#0 to Phi node: let c#5: bytes = φ(c#0 <- block@9) in block@9: // ternary_true_L39 +debug: Added c#0 to Phi node: let c#5: bytes = Phi(c#0 <- block@9) in block@9: // ternary_true_L39 debug: Created Phi assignment: let c#6: bytes = undefined while trying to resolve 'c' in block@13: // ternary_merge_L39 -debug: Added c#0 to Phi node: let c#6: bytes = φ(c#0 <- block@11) in block@11: // ternary_true_L39 -debug: Added c#0 to Phi node: let c#6: bytes = φ(c#0 <- block@11, c#0 <- block@12) in block@12: // ternary_false_L39 +debug: Added c#0 to Phi node: let c#6: bytes = Phi(c#0 <- block@11) in block@11: // ternary_true_L39 +debug: Added c#0 to Phi node: let c#6: bytes = Phi(c#0 <- block@11, c#0 <- block@12) in block@12: // ternary_false_L39 debug: Replacing trivial Phi node: let c#6: bytes = φ(c#0 <- block@11, c#0 <- block@12) (c#6) with c#0 debug: Deleting Phi assignment: let c#6: bytes = φ(c#0 <- block@11, c#0 <- block@12) debug: Replaced trivial Phi node: let c#6: bytes = φ(c#0 <- block@11, c#0 <- block@12) (c#6) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#5: bytes = φ(c#0 <- block@9, c#0 <- block@13) in block@13: // ternary_merge_L39 +debug: Added c#0 to Phi node: let c#5: bytes = Phi(c#0 <- block@9, c#0 <- block@13) in block@13: // ternary_merge_L39 debug: Replacing trivial Phi node: let c#5: bytes = φ(c#0 <- block@9, c#0 <- block@13) (c#5) with c#0 debug: Deleting Phi assignment: let c#5: bytes = φ(c#0 <- block@9, c#0 <- block@13) debug: Replaced trivial Phi node: let c#5: bytes = φ(c#0 <- block@9, c#0 <- block@13) (c#5) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#4: bytes = φ(c#0 <- block@7, c#0 <- block@14) in block@14: // ternary_merge_L39 +debug: Added c#0 to Phi node: let c#4: bytes = Phi(c#0 <- block@7, c#0 <- block@14) in block@14: // ternary_merge_L39 debug: Replacing trivial Phi node: let c#4: bytes = φ(c#0 <- block@7, c#0 <- block@14) (c#4) with c#0 debug: Deleting Phi assignment: let c#4: bytes = φ(c#0 <- block@7, c#0 <- block@14) debug: Replaced trivial Phi node: let c#4: bytes = φ(c#0 <- block@7, c#0 <- block@14) (c#4) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#3: bytes = φ(c#0 <- block@5, c#0 <- block@15) in block@15: // ternary_merge_L39 +debug: Added c#0 to Phi node: let c#3: bytes = Phi(c#0 <- block@5, c#0 <- block@15) in block@15: // ternary_merge_L39 debug: Replacing trivial Phi node: let c#3: bytes = φ(c#0 <- block@5, c#0 <- block@15) (c#3) with c#0 debug: Deleting Phi assignment: let c#3: bytes = φ(c#0 <- block@5, c#0 <- block@15) debug: Replaced trivial Phi node: let c#3: bytes = φ(c#0 <- block@5, c#0 <- block@15) (c#3) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#2: bytes = φ(c#0 <- block@3, c#0 <- block@16) in block@16: // ternary_merge_L39 +debug: Added c#0 to Phi node: let c#2: bytes = Phi(c#0 <- block@3, c#0 <- block@16) in block@16: // ternary_merge_L39 debug: Replacing trivial Phi node: let c#2: bytes = φ(c#0 <- block@3, c#0 <- block@16) (c#2) with c#0 debug: Deleting Phi assignment: let c#2: bytes = φ(c#0 <- block@3, c#0 <- block@16) debug: Replaced trivial Phi node: let c#2: bytes = φ(c#0 <- block@3, c#0 <- block@16) (c#2) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#1: bytes = φ(c#0 <- block@1, c#0 <- block@17) in block@17: // ternary_merge_L39 +debug: Added c#0 to Phi node: let c#1: bytes = Phi(c#0 <- block@1, c#0 <- block@17) in block@17: // ternary_merge_L39 debug: Replacing trivial Phi node: let c#1: bytes = φ(c#0 <- block@1, c#0 <- block@17) (c#1) with c#0 debug: Deleting Phi assignment: let c#1: bytes = φ(c#0 <- block@1, c#0 <- block@17) debug: Replaced trivial Phi node: let c#1: bytes = φ(c#0 <- block@1, c#0 <- block@17) (c#1) with c#0 in current definition for 1 blocks @@ -107,169 +107,169 @@ debug: Sealing block@None: // ternary_true_L40 debug: Sealing block@None: // ternary_false_L40 debug: Terminated block@19: // ternary_true_L40 debug: Created Phi assignment: let h#1: bytes = undefined while trying to resolve 'h' in block@18: // ternary_merge_L39 -debug: Added h#0 to Phi node: let h#1: bytes = φ(h#0 <- block@1) in block@1: // ternary_true_L39 +debug: Added h#0 to Phi node: let h#1: bytes = Phi(h#0 <- block@1) in block@1: // ternary_true_L39 debug: Created Phi assignment: let h#2: bytes = undefined while trying to resolve 'h' in block@17: // ternary_merge_L39 -debug: Added h#0 to Phi node: let h#2: bytes = φ(h#0 <- block@3) in block@3: // ternary_true_L39 +debug: Added h#0 to Phi node: let h#2: bytes = Phi(h#0 <- block@3) in block@3: // ternary_true_L39 debug: Created Phi assignment: let h#3: bytes = undefined while trying to resolve 'h' in block@16: // ternary_merge_L39 -debug: Added h#0 to Phi node: let h#3: bytes = φ(h#0 <- block@5) in block@5: // ternary_true_L39 +debug: Added h#0 to Phi node: let h#3: bytes = Phi(h#0 <- block@5) in block@5: // ternary_true_L39 debug: Created Phi assignment: let h#4: bytes = undefined while trying to resolve 'h' in block@15: // ternary_merge_L39 -debug: Added h#0 to Phi node: let h#4: bytes = φ(h#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added h#0 to Phi node: let h#4: bytes = Phi(h#0 <- block@7) in block@7: // ternary_true_L39 debug: Created Phi assignment: let h#5: bytes = undefined while trying to resolve 'h' in block@14: // ternary_merge_L39 -debug: Added h#0 to Phi node: let h#5: bytes = φ(h#0 <- block@9) in block@9: // ternary_true_L39 +debug: Added h#0 to Phi node: let h#5: bytes = Phi(h#0 <- block@9) in block@9: // ternary_true_L39 debug: Created Phi assignment: let h#6: bytes = undefined while trying to resolve 'h' in block@13: // ternary_merge_L39 -debug: Added h#0 to Phi node: let h#6: bytes = φ(h#0 <- block@11) in block@11: // ternary_true_L39 -debug: Added h#0 to Phi node: let h#6: bytes = φ(h#0 <- block@11, h#0 <- block@12) in block@12: // ternary_false_L39 +debug: Added h#0 to Phi node: let h#6: bytes = Phi(h#0 <- block@11) in block@11: // ternary_true_L39 +debug: Added h#0 to Phi node: let h#6: bytes = Phi(h#0 <- block@11, h#0 <- block@12) in block@12: // ternary_false_L39 debug: Replacing trivial Phi node: let h#6: bytes = φ(h#0 <- block@11, h#0 <- block@12) (h#6) with h#0 debug: Deleting Phi assignment: let h#6: bytes = φ(h#0 <- block@11, h#0 <- block@12) debug: Replaced trivial Phi node: let h#6: bytes = φ(h#0 <- block@11, h#0 <- block@12) (h#6) with h#0 in current definition for 1 blocks -debug: Added h#0 to Phi node: let h#5: bytes = φ(h#0 <- block@9, h#0 <- block@13) in block@13: // ternary_merge_L39 +debug: Added h#0 to Phi node: let h#5: bytes = Phi(h#0 <- block@9, h#0 <- block@13) in block@13: // ternary_merge_L39 debug: Replacing trivial Phi node: let h#5: bytes = φ(h#0 <- block@9, h#0 <- block@13) (h#5) with h#0 debug: Deleting Phi assignment: let h#5: bytes = φ(h#0 <- block@9, h#0 <- block@13) debug: Replaced trivial Phi node: let h#5: bytes = φ(h#0 <- block@9, h#0 <- block@13) (h#5) with h#0 in current definition for 1 blocks -debug: Added h#0 to Phi node: let h#4: bytes = φ(h#0 <- block@7, h#0 <- block@14) in block@14: // ternary_merge_L39 +debug: Added h#0 to Phi node: let h#4: bytes = Phi(h#0 <- block@7, h#0 <- block@14) in block@14: // ternary_merge_L39 debug: Replacing trivial Phi node: let h#4: bytes = φ(h#0 <- block@7, h#0 <- block@14) (h#4) with h#0 debug: Deleting Phi assignment: let h#4: bytes = φ(h#0 <- block@7, h#0 <- block@14) debug: Replaced trivial Phi node: let h#4: bytes = φ(h#0 <- block@7, h#0 <- block@14) (h#4) with h#0 in current definition for 1 blocks -debug: Added h#0 to Phi node: let h#3: bytes = φ(h#0 <- block@5, h#0 <- block@15) in block@15: // ternary_merge_L39 +debug: Added h#0 to Phi node: let h#3: bytes = Phi(h#0 <- block@5, h#0 <- block@15) in block@15: // ternary_merge_L39 debug: Replacing trivial Phi node: let h#3: bytes = φ(h#0 <- block@5, h#0 <- block@15) (h#3) with h#0 debug: Deleting Phi assignment: let h#3: bytes = φ(h#0 <- block@5, h#0 <- block@15) debug: Replaced trivial Phi node: let h#3: bytes = φ(h#0 <- block@5, h#0 <- block@15) (h#3) with h#0 in current definition for 1 blocks -debug: Added h#0 to Phi node: let h#2: bytes = φ(h#0 <- block@3, h#0 <- block@16) in block@16: // ternary_merge_L39 +debug: Added h#0 to Phi node: let h#2: bytes = Phi(h#0 <- block@3, h#0 <- block@16) in block@16: // ternary_merge_L39 debug: Replacing trivial Phi node: let h#2: bytes = φ(h#0 <- block@3, h#0 <- block@16) (h#2) with h#0 debug: Deleting Phi assignment: let h#2: bytes = φ(h#0 <- block@3, h#0 <- block@16) debug: Replaced trivial Phi node: let h#2: bytes = φ(h#0 <- block@3, h#0 <- block@16) (h#2) with h#0 in current definition for 1 blocks -debug: Added h#0 to Phi node: let h#1: bytes = φ(h#0 <- block@1, h#0 <- block@17) in block@17: // ternary_merge_L39 +debug: Added h#0 to Phi node: let h#1: bytes = Phi(h#0 <- block@1, h#0 <- block@17) in block@17: // ternary_merge_L39 debug: Replacing trivial Phi node: let h#1: bytes = φ(h#0 <- block@1, h#0 <- block@17) (h#1) with h#0 debug: Deleting Phi assignment: let h#1: bytes = φ(h#0 <- block@1, h#0 <- block@17) debug: Replaced trivial Phi node: let h#1: bytes = φ(h#0 <- block@1, h#0 <- block@17) (h#1) with h#0 in current definition for 1 blocks debug: Terminated block@20: // ternary_false_L40 debug: Sealing block@21: // ternary_merge_L40 debug: Created Phi assignment: let ternary_result%66#2: bytes = undefined while trying to resolve 'ternary_result%66' in block@21: // ternary_merge_L40 -debug: Added ternary_result%66#0 to Phi node: let ternary_result%66#2: bytes = φ(ternary_result%66#0 <- block@19) in block@19: // ternary_true_L40 -debug: Added ternary_result%66#1 to Phi node: let ternary_result%66#2: bytes = φ(ternary_result%66#0 <- block@19, ternary_result%66#1 <- block@20) in block@20: // ternary_false_L40 +debug: Added ternary_result%66#0 to Phi node: let ternary_result%66#2: bytes = Phi(ternary_result%66#0 <- block@19) in block@19: // ternary_true_L40 +debug: Added ternary_result%66#1 to Phi node: let ternary_result%66#2: bytes = Phi(ternary_result%66#0 <- block@19, ternary_result%66#1 <- block@20) in block@20: // ternary_false_L40 debug: Created Phi assignment: let k#1: bytes = undefined while trying to resolve 'k' in block@21: // ternary_merge_L40 debug: Created Phi assignment: let k#2: bytes = undefined while trying to resolve 'k' in block@18: // ternary_merge_L39 -debug: Added k#0 to Phi node: let k#2: bytes = φ(k#0 <- block@1) in block@1: // ternary_true_L39 +debug: Added k#0 to Phi node: let k#2: bytes = Phi(k#0 <- block@1) in block@1: // ternary_true_L39 debug: Created Phi assignment: let k#3: bytes = undefined while trying to resolve 'k' in block@17: // ternary_merge_L39 -debug: Added k#0 to Phi node: let k#3: bytes = φ(k#0 <- block@3) in block@3: // ternary_true_L39 +debug: Added k#0 to Phi node: let k#3: bytes = Phi(k#0 <- block@3) in block@3: // ternary_true_L39 debug: Created Phi assignment: let k#4: bytes = undefined while trying to resolve 'k' in block@16: // ternary_merge_L39 -debug: Added k#0 to Phi node: let k#4: bytes = φ(k#0 <- block@5) in block@5: // ternary_true_L39 +debug: Added k#0 to Phi node: let k#4: bytes = Phi(k#0 <- block@5) in block@5: // ternary_true_L39 debug: Created Phi assignment: let k#5: bytes = undefined while trying to resolve 'k' in block@15: // ternary_merge_L39 -debug: Added k#0 to Phi node: let k#5: bytes = φ(k#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added k#0 to Phi node: let k#5: bytes = Phi(k#0 <- block@7) in block@7: // ternary_true_L39 debug: Created Phi assignment: let k#6: bytes = undefined while trying to resolve 'k' in block@14: // ternary_merge_L39 -debug: Added k#0 to Phi node: let k#6: bytes = φ(k#0 <- block@9) in block@9: // ternary_true_L39 +debug: Added k#0 to Phi node: let k#6: bytes = Phi(k#0 <- block@9) in block@9: // ternary_true_L39 debug: Created Phi assignment: let k#7: bytes = undefined while trying to resolve 'k' in block@13: // ternary_merge_L39 -debug: Added k#0 to Phi node: let k#7: bytes = φ(k#0 <- block@11) in block@11: // ternary_true_L39 -debug: Added k#0 to Phi node: let k#7: bytes = φ(k#0 <- block@11, k#0 <- block@12) in block@12: // ternary_false_L39 +debug: Added k#0 to Phi node: let k#7: bytes = Phi(k#0 <- block@11) in block@11: // ternary_true_L39 +debug: Added k#0 to Phi node: let k#7: bytes = Phi(k#0 <- block@11, k#0 <- block@12) in block@12: // ternary_false_L39 debug: Replacing trivial Phi node: let k#7: bytes = φ(k#0 <- block@11, k#0 <- block@12) (k#7) with k#0 debug: Deleting Phi assignment: let k#7: bytes = φ(k#0 <- block@11, k#0 <- block@12) debug: Replaced trivial Phi node: let k#7: bytes = φ(k#0 <- block@11, k#0 <- block@12) (k#7) with k#0 in current definition for 1 blocks -debug: Added k#0 to Phi node: let k#6: bytes = φ(k#0 <- block@9, k#0 <- block@13) in block@13: // ternary_merge_L39 +debug: Added k#0 to Phi node: let k#6: bytes = Phi(k#0 <- block@9, k#0 <- block@13) in block@13: // ternary_merge_L39 debug: Replacing trivial Phi node: let k#6: bytes = φ(k#0 <- block@9, k#0 <- block@13) (k#6) with k#0 debug: Deleting Phi assignment: let k#6: bytes = φ(k#0 <- block@9, k#0 <- block@13) debug: Replaced trivial Phi node: let k#6: bytes = φ(k#0 <- block@9, k#0 <- block@13) (k#6) with k#0 in current definition for 1 blocks -debug: Added k#0 to Phi node: let k#5: bytes = φ(k#0 <- block@7, k#0 <- block@14) in block@14: // ternary_merge_L39 +debug: Added k#0 to Phi node: let k#5: bytes = Phi(k#0 <- block@7, k#0 <- block@14) in block@14: // ternary_merge_L39 debug: Replacing trivial Phi node: let k#5: bytes = φ(k#0 <- block@7, k#0 <- block@14) (k#5) with k#0 debug: Deleting Phi assignment: let k#5: bytes = φ(k#0 <- block@7, k#0 <- block@14) debug: Replaced trivial Phi node: let k#5: bytes = φ(k#0 <- block@7, k#0 <- block@14) (k#5) with k#0 in current definition for 1 blocks -debug: Added k#0 to Phi node: let k#4: bytes = φ(k#0 <- block@5, k#0 <- block@15) in block@15: // ternary_merge_L39 +debug: Added k#0 to Phi node: let k#4: bytes = Phi(k#0 <- block@5, k#0 <- block@15) in block@15: // ternary_merge_L39 debug: Replacing trivial Phi node: let k#4: bytes = φ(k#0 <- block@5, k#0 <- block@15) (k#4) with k#0 debug: Deleting Phi assignment: let k#4: bytes = φ(k#0 <- block@5, k#0 <- block@15) debug: Replaced trivial Phi node: let k#4: bytes = φ(k#0 <- block@5, k#0 <- block@15) (k#4) with k#0 in current definition for 1 blocks -debug: Added k#0 to Phi node: let k#3: bytes = φ(k#0 <- block@3, k#0 <- block@16) in block@16: // ternary_merge_L39 +debug: Added k#0 to Phi node: let k#3: bytes = Phi(k#0 <- block@3, k#0 <- block@16) in block@16: // ternary_merge_L39 debug: Replacing trivial Phi node: let k#3: bytes = φ(k#0 <- block@3, k#0 <- block@16) (k#3) with k#0 debug: Deleting Phi assignment: let k#3: bytes = φ(k#0 <- block@3, k#0 <- block@16) debug: Replaced trivial Phi node: let k#3: bytes = φ(k#0 <- block@3, k#0 <- block@16) (k#3) with k#0 in current definition for 1 blocks -debug: Added k#0 to Phi node: let k#2: bytes = φ(k#0 <- block@1, k#0 <- block@17) in block@17: // ternary_merge_L39 +debug: Added k#0 to Phi node: let k#2: bytes = Phi(k#0 <- block@1, k#0 <- block@17) in block@17: // ternary_merge_L39 debug: Replacing trivial Phi node: let k#2: bytes = φ(k#0 <- block@1, k#0 <- block@17) (k#2) with k#0 debug: Deleting Phi assignment: let k#2: bytes = φ(k#0 <- block@1, k#0 <- block@17) debug: Replaced trivial Phi node: let k#2: bytes = φ(k#0 <- block@1, k#0 <- block@17) (k#2) with k#0 in current definition for 1 blocks -debug: Added k#0 to Phi node: let k#1: bytes = φ(k#0 <- block@19) in block@19: // ternary_true_L40 -debug: Added k#0 to Phi node: let k#1: bytes = φ(k#0 <- block@19, k#0 <- block@20) in block@20: // ternary_false_L40 +debug: Added k#0 to Phi node: let k#1: bytes = Phi(k#0 <- block@19) in block@19: // ternary_true_L40 +debug: Added k#0 to Phi node: let k#1: bytes = Phi(k#0 <- block@19, k#0 <- block@20) in block@20: // ternary_false_L40 debug: Replacing trivial Phi node: let k#1: bytes = φ(k#0 <- block@19, k#0 <- block@20) (k#1) with k#0 debug: Deleting Phi assignment: let k#1: bytes = φ(k#0 <- block@19, k#0 <- block@20) debug: Replaced trivial Phi node: let k#1: bytes = φ(k#0 <- block@19, k#0 <- block@20) (k#1) with k#0 in current definition for 1 blocks debug: Created Phi assignment: let boolean_packing#1: bytes = undefined while trying to resolve 'boolean_packing' in block@21: // ternary_merge_L40 debug: Created Phi assignment: let boolean_packing#2: bytes = undefined while trying to resolve 'boolean_packing' in block@18: // ternary_merge_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#2: bytes = φ(boolean_packing#0 <- block@1) in block@1: // ternary_true_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#2: bytes = Phi(boolean_packing#0 <- block@1) in block@1: // ternary_true_L39 debug: Created Phi assignment: let boolean_packing#3: bytes = undefined while trying to resolve 'boolean_packing' in block@17: // ternary_merge_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#3: bytes = φ(boolean_packing#0 <- block@3) in block@3: // ternary_true_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#3: bytes = Phi(boolean_packing#0 <- block@3) in block@3: // ternary_true_L39 debug: Created Phi assignment: let boolean_packing#4: bytes = undefined while trying to resolve 'boolean_packing' in block@16: // ternary_merge_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#4: bytes = φ(boolean_packing#0 <- block@5) in block@5: // ternary_true_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#4: bytes = Phi(boolean_packing#0 <- block@5) in block@5: // ternary_true_L39 debug: Created Phi assignment: let boolean_packing#5: bytes = undefined while trying to resolve 'boolean_packing' in block@15: // ternary_merge_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#5: bytes = φ(boolean_packing#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#5: bytes = Phi(boolean_packing#0 <- block@7) in block@7: // ternary_true_L39 debug: Created Phi assignment: let boolean_packing#6: bytes = undefined while trying to resolve 'boolean_packing' in block@14: // ternary_merge_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#6: bytes = φ(boolean_packing#0 <- block@9) in block@9: // ternary_true_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#6: bytes = Phi(boolean_packing#0 <- block@9) in block@9: // ternary_true_L39 debug: Created Phi assignment: let boolean_packing#7: bytes = undefined while trying to resolve 'boolean_packing' in block@13: // ternary_merge_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#7: bytes = φ(boolean_packing#0 <- block@11) in block@11: // ternary_true_L39 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#7: bytes = φ(boolean_packing#0 <- block@11, boolean_packing#0 <- block@12) in block@12: // ternary_false_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#7: bytes = Phi(boolean_packing#0 <- block@11) in block@11: // ternary_true_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#7: bytes = Phi(boolean_packing#0 <- block@11, boolean_packing#0 <- block@12) in block@12: // ternary_false_L39 debug: Replacing trivial Phi node: let boolean_packing#7: bytes = φ(boolean_packing#0 <- block@11, boolean_packing#0 <- block@12) (boolean_packing#7) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#7: bytes = φ(boolean_packing#0 <- block@11, boolean_packing#0 <- block@12) debug: Replaced trivial Phi node: let boolean_packing#7: bytes = φ(boolean_packing#0 <- block@11, boolean_packing#0 <- block@12) (boolean_packing#7) with boolean_packing#0 in current definition for 1 blocks -debug: Added boolean_packing#0 to Phi node: let boolean_packing#6: bytes = φ(boolean_packing#0 <- block@9, boolean_packing#0 <- block@13) in block@13: // ternary_merge_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#6: bytes = Phi(boolean_packing#0 <- block@9, boolean_packing#0 <- block@13) in block@13: // ternary_merge_L39 debug: Replacing trivial Phi node: let boolean_packing#6: bytes = φ(boolean_packing#0 <- block@9, boolean_packing#0 <- block@13) (boolean_packing#6) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#6: bytes = φ(boolean_packing#0 <- block@9, boolean_packing#0 <- block@13) debug: Replaced trivial Phi node: let boolean_packing#6: bytes = φ(boolean_packing#0 <- block@9, boolean_packing#0 <- block@13) (boolean_packing#6) with boolean_packing#0 in current definition for 1 blocks -debug: Added boolean_packing#0 to Phi node: let boolean_packing#5: bytes = φ(boolean_packing#0 <- block@7, boolean_packing#0 <- block@14) in block@14: // ternary_merge_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#5: bytes = Phi(boolean_packing#0 <- block@7, boolean_packing#0 <- block@14) in block@14: // ternary_merge_L39 debug: Replacing trivial Phi node: let boolean_packing#5: bytes = φ(boolean_packing#0 <- block@7, boolean_packing#0 <- block@14) (boolean_packing#5) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#5: bytes = φ(boolean_packing#0 <- block@7, boolean_packing#0 <- block@14) debug: Replaced trivial Phi node: let boolean_packing#5: bytes = φ(boolean_packing#0 <- block@7, boolean_packing#0 <- block@14) (boolean_packing#5) with boolean_packing#0 in current definition for 1 blocks -debug: Added boolean_packing#0 to Phi node: let boolean_packing#4: bytes = φ(boolean_packing#0 <- block@5, boolean_packing#0 <- block@15) in block@15: // ternary_merge_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#4: bytes = Phi(boolean_packing#0 <- block@5, boolean_packing#0 <- block@15) in block@15: // ternary_merge_L39 debug: Replacing trivial Phi node: let boolean_packing#4: bytes = φ(boolean_packing#0 <- block@5, boolean_packing#0 <- block@15) (boolean_packing#4) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#4: bytes = φ(boolean_packing#0 <- block@5, boolean_packing#0 <- block@15) debug: Replaced trivial Phi node: let boolean_packing#4: bytes = φ(boolean_packing#0 <- block@5, boolean_packing#0 <- block@15) (boolean_packing#4) with boolean_packing#0 in current definition for 1 blocks -debug: Added boolean_packing#0 to Phi node: let boolean_packing#3: bytes = φ(boolean_packing#0 <- block@3, boolean_packing#0 <- block@16) in block@16: // ternary_merge_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#3: bytes = Phi(boolean_packing#0 <- block@3, boolean_packing#0 <- block@16) in block@16: // ternary_merge_L39 debug: Replacing trivial Phi node: let boolean_packing#3: bytes = φ(boolean_packing#0 <- block@3, boolean_packing#0 <- block@16) (boolean_packing#3) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#3: bytes = φ(boolean_packing#0 <- block@3, boolean_packing#0 <- block@16) debug: Replaced trivial Phi node: let boolean_packing#3: bytes = φ(boolean_packing#0 <- block@3, boolean_packing#0 <- block@16) (boolean_packing#3) with boolean_packing#0 in current definition for 1 blocks -debug: Added boolean_packing#0 to Phi node: let boolean_packing#2: bytes = φ(boolean_packing#0 <- block@1, boolean_packing#0 <- block@17) in block@17: // ternary_merge_L39 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#2: bytes = Phi(boolean_packing#0 <- block@1, boolean_packing#0 <- block@17) in block@17: // ternary_merge_L39 debug: Replacing trivial Phi node: let boolean_packing#2: bytes = φ(boolean_packing#0 <- block@1, boolean_packing#0 <- block@17) (boolean_packing#2) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#2: bytes = φ(boolean_packing#0 <- block@1, boolean_packing#0 <- block@17) debug: Replaced trivial Phi node: let boolean_packing#2: bytes = φ(boolean_packing#0 <- block@1, boolean_packing#0 <- block@17) (boolean_packing#2) with boolean_packing#0 in current definition for 1 blocks -debug: Added boolean_packing#0 to Phi node: let boolean_packing#1: bytes = φ(boolean_packing#0 <- block@19) in block@19: // ternary_true_L40 -debug: Added boolean_packing#0 to Phi node: let boolean_packing#1: bytes = φ(boolean_packing#0 <- block@19, boolean_packing#0 <- block@20) in block@20: // ternary_false_L40 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#1: bytes = Phi(boolean_packing#0 <- block@19) in block@19: // ternary_true_L40 +debug: Added boolean_packing#0 to Phi node: let boolean_packing#1: bytes = Phi(boolean_packing#0 <- block@19, boolean_packing#0 <- block@20) in block@20: // ternary_false_L40 debug: Replacing trivial Phi node: let boolean_packing#1: bytes = φ(boolean_packing#0 <- block@19, boolean_packing#0 <- block@20) (boolean_packing#1) with boolean_packing#0 debug: Deleting Phi assignment: let boolean_packing#1: bytes = φ(boolean_packing#0 <- block@19, boolean_packing#0 <- block@20) debug: Replaced trivial Phi node: let boolean_packing#1: bytes = φ(boolean_packing#0 <- block@19, boolean_packing#0 <- block@20) (boolean_packing#1) with boolean_packing#0 in current definition for 1 blocks debug: Created Phi assignment: let my_tuple#1: bytes = undefined while trying to resolve 'my_tuple' in block@21: // ternary_merge_L40 debug: Created Phi assignment: let my_tuple#2: bytes = undefined while trying to resolve 'my_tuple' in block@18: // ternary_merge_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#2: bytes = φ(my_tuple#0 <- block@1) in block@1: // ternary_true_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#2: bytes = Phi(my_tuple#0 <- block@1) in block@1: // ternary_true_L39 debug: Created Phi assignment: let my_tuple#3: bytes = undefined while trying to resolve 'my_tuple' in block@17: // ternary_merge_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#3: bytes = φ(my_tuple#0 <- block@3) in block@3: // ternary_true_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#3: bytes = Phi(my_tuple#0 <- block@3) in block@3: // ternary_true_L39 debug: Created Phi assignment: let my_tuple#4: bytes = undefined while trying to resolve 'my_tuple' in block@16: // ternary_merge_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#4: bytes = φ(my_tuple#0 <- block@5) in block@5: // ternary_true_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#4: bytes = Phi(my_tuple#0 <- block@5) in block@5: // ternary_true_L39 debug: Created Phi assignment: let my_tuple#5: bytes = undefined while trying to resolve 'my_tuple' in block@15: // ternary_merge_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#5: bytes = φ(my_tuple#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#5: bytes = Phi(my_tuple#0 <- block@7) in block@7: // ternary_true_L39 debug: Created Phi assignment: let my_tuple#6: bytes = undefined while trying to resolve 'my_tuple' in block@14: // ternary_merge_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#6: bytes = φ(my_tuple#0 <- block@9) in block@9: // ternary_true_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#6: bytes = Phi(my_tuple#0 <- block@9) in block@9: // ternary_true_L39 debug: Created Phi assignment: let my_tuple#7: bytes = undefined while trying to resolve 'my_tuple' in block@13: // ternary_merge_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#7: bytes = φ(my_tuple#0 <- block@11) in block@11: // ternary_true_L39 -debug: Added my_tuple#0 to Phi node: let my_tuple#7: bytes = φ(my_tuple#0 <- block@11, my_tuple#0 <- block@12) in block@12: // ternary_false_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#7: bytes = Phi(my_tuple#0 <- block@11) in block@11: // ternary_true_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#7: bytes = Phi(my_tuple#0 <- block@11, my_tuple#0 <- block@12) in block@12: // ternary_false_L39 debug: Replacing trivial Phi node: let my_tuple#7: bytes = φ(my_tuple#0 <- block@11, my_tuple#0 <- block@12) (my_tuple#7) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#7: bytes = φ(my_tuple#0 <- block@11, my_tuple#0 <- block@12) debug: Replaced trivial Phi node: let my_tuple#7: bytes = φ(my_tuple#0 <- block@11, my_tuple#0 <- block@12) (my_tuple#7) with my_tuple#0 in current definition for 1 blocks -debug: Added my_tuple#0 to Phi node: let my_tuple#6: bytes = φ(my_tuple#0 <- block@9, my_tuple#0 <- block@13) in block@13: // ternary_merge_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#6: bytes = Phi(my_tuple#0 <- block@9, my_tuple#0 <- block@13) in block@13: // ternary_merge_L39 debug: Replacing trivial Phi node: let my_tuple#6: bytes = φ(my_tuple#0 <- block@9, my_tuple#0 <- block@13) (my_tuple#6) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#6: bytes = φ(my_tuple#0 <- block@9, my_tuple#0 <- block@13) debug: Replaced trivial Phi node: let my_tuple#6: bytes = φ(my_tuple#0 <- block@9, my_tuple#0 <- block@13) (my_tuple#6) with my_tuple#0 in current definition for 1 blocks -debug: Added my_tuple#0 to Phi node: let my_tuple#5: bytes = φ(my_tuple#0 <- block@7, my_tuple#0 <- block@14) in block@14: // ternary_merge_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#5: bytes = Phi(my_tuple#0 <- block@7, my_tuple#0 <- block@14) in block@14: // ternary_merge_L39 debug: Replacing trivial Phi node: let my_tuple#5: bytes = φ(my_tuple#0 <- block@7, my_tuple#0 <- block@14) (my_tuple#5) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#5: bytes = φ(my_tuple#0 <- block@7, my_tuple#0 <- block@14) debug: Replaced trivial Phi node: let my_tuple#5: bytes = φ(my_tuple#0 <- block@7, my_tuple#0 <- block@14) (my_tuple#5) with my_tuple#0 in current definition for 1 blocks -debug: Added my_tuple#0 to Phi node: let my_tuple#4: bytes = φ(my_tuple#0 <- block@5, my_tuple#0 <- block@15) in block@15: // ternary_merge_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#4: bytes = Phi(my_tuple#0 <- block@5, my_tuple#0 <- block@15) in block@15: // ternary_merge_L39 debug: Replacing trivial Phi node: let my_tuple#4: bytes = φ(my_tuple#0 <- block@5, my_tuple#0 <- block@15) (my_tuple#4) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#4: bytes = φ(my_tuple#0 <- block@5, my_tuple#0 <- block@15) debug: Replaced trivial Phi node: let my_tuple#4: bytes = φ(my_tuple#0 <- block@5, my_tuple#0 <- block@15) (my_tuple#4) with my_tuple#0 in current definition for 1 blocks -debug: Added my_tuple#0 to Phi node: let my_tuple#3: bytes = φ(my_tuple#0 <- block@3, my_tuple#0 <- block@16) in block@16: // ternary_merge_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#3: bytes = Phi(my_tuple#0 <- block@3, my_tuple#0 <- block@16) in block@16: // ternary_merge_L39 debug: Replacing trivial Phi node: let my_tuple#3: bytes = φ(my_tuple#0 <- block@3, my_tuple#0 <- block@16) (my_tuple#3) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#3: bytes = φ(my_tuple#0 <- block@3, my_tuple#0 <- block@16) debug: Replaced trivial Phi node: let my_tuple#3: bytes = φ(my_tuple#0 <- block@3, my_tuple#0 <- block@16) (my_tuple#3) with my_tuple#0 in current definition for 1 blocks -debug: Added my_tuple#0 to Phi node: let my_tuple#2: bytes = φ(my_tuple#0 <- block@1, my_tuple#0 <- block@17) in block@17: // ternary_merge_L39 +debug: Added my_tuple#0 to Phi node: let my_tuple#2: bytes = Phi(my_tuple#0 <- block@1, my_tuple#0 <- block@17) in block@17: // ternary_merge_L39 debug: Replacing trivial Phi node: let my_tuple#2: bytes = φ(my_tuple#0 <- block@1, my_tuple#0 <- block@17) (my_tuple#2) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#2: bytes = φ(my_tuple#0 <- block@1, my_tuple#0 <- block@17) debug: Replaced trivial Phi node: let my_tuple#2: bytes = φ(my_tuple#0 <- block@1, my_tuple#0 <- block@17) (my_tuple#2) with my_tuple#0 in current definition for 1 blocks -debug: Added my_tuple#0 to Phi node: let my_tuple#1: bytes = φ(my_tuple#0 <- block@19) in block@19: // ternary_true_L40 -debug: Added my_tuple#0 to Phi node: let my_tuple#1: bytes = φ(my_tuple#0 <- block@19, my_tuple#0 <- block@20) in block@20: // ternary_false_L40 +debug: Added my_tuple#0 to Phi node: let my_tuple#1: bytes = Phi(my_tuple#0 <- block@19) in block@19: // ternary_true_L40 +debug: Added my_tuple#0 to Phi node: let my_tuple#1: bytes = Phi(my_tuple#0 <- block@19, my_tuple#0 <- block@20) in block@20: // ternary_false_L40 debug: Replacing trivial Phi node: let my_tuple#1: bytes = φ(my_tuple#0 <- block@19, my_tuple#0 <- block@20) (my_tuple#1) with my_tuple#0 debug: Deleting Phi assignment: let my_tuple#1: bytes = φ(my_tuple#0 <- block@19, my_tuple#0 <- block@20) debug: Replaced trivial Phi node: let my_tuple#1: bytes = φ(my_tuple#0 <- block@19, my_tuple#0 <- block@20) (my_tuple#1) with my_tuple#0 in current definition for 1 blocks @@ -289,25 +289,25 @@ debug: Terminated block@1: // for_header_0_L30 debug: Terminated block@2: // for_header_1_L30 debug: Sealing block@None: // for_body_L30 debug: Created Phi assignment: let val#2: bytes = undefined while trying to resolve 'val' in block@3: // for_body_L30 -debug: Added val#0 to Phi node: let val#2: bytes = φ(val#0 <- block@1) in block@1: // for_header_0_L30 -debug: Added val#1 to Phi node: let val#2: bytes = φ(val#0 <- block@1, val#1 <- block@2) in block@2: // for_header_1_L30 +debug: Added val#0 to Phi node: let val#2: bytes = Phi(val#0 <- block@1) in block@1: // for_header_0_L30 +debug: Added val#1 to Phi node: let val#2: bytes = Phi(val#0 <- block@1, val#1 <- block@2) in block@2: // for_header_1_L30 debug: Terminated block@3: // for_body_L30 debug: Sealing block@4: // for_footer_L30 debug: Created Phi assignment: let tuple_index%6#1: uint64 = undefined while trying to resolve 'tuple_index%6' in block@3: // for_body_L30 -debug: Added tuple_index%6#0 to Phi node: let tuple_index%6#1: uint64 = φ(tuple_index%6#0 <- block@1) in block@1: // for_header_0_L30 +debug: Added tuple_index%6#0 to Phi node: let tuple_index%6#1: uint64 = Phi(tuple_index%6#0 <- block@1) in block@1: // for_header_0_L30 debug: Looking for 'tuple_index%6' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L30 debug: Created Phi assignment: let tuple_index%6#2: uint64 = undefined while trying to resolve 'tuple_index%6' in block@2: // for_header_1_L30 -debug: Added tuple_index%6#2 to Phi node: let tuple_index%6#1: uint64 = φ(tuple_index%6#0 <- block@1, tuple_index%6#2 <- block@2) in block@2: // for_header_1_L30 +debug: Added tuple_index%6#2 to Phi node: let tuple_index%6#1: uint64 = Phi(tuple_index%6#0 <- block@1, tuple_index%6#2 <- block@2) in block@2: // for_header_1_L30 debug: Terminated block@4: // for_footer_L30 debug: Sealing block@2: // for_header_1_L30 -debug: Added tuple_index%6#3 to Phi node: let tuple_index%6#2: uint64 = φ(tuple_index%6#3 <- block@4) in block@4: // for_footer_L30 +debug: Added tuple_index%6#3 to Phi node: let tuple_index%6#2: uint64 = Phi(tuple_index%6#3 <- block@4) in block@4: // for_footer_L30 debug: Replacing trivial Phi node: let tuple_index%6#2: uint64 = φ(tuple_index%6#3 <- block@4) (tuple_index%6#2) with tuple_index%6#3 debug: Deleting Phi assignment: let tuple_index%6#2: uint64 = φ(tuple_index%6#3 <- block@4) debug: Replaced trivial Phi node: let tuple_index%6#2: uint64 = φ(tuple_index%6#3 <- block@4) (tuple_index%6#2) with tuple_index%6#3 in current definition for 1 blocks debug: Sealing block@None: // after_for_L30 debug: Created Phi assignment: let coord_1#1: bytes = undefined while trying to resolve 'coord_1' in block@3: // for_body_L30 -debug: Added coord_1#0 to Phi node: let coord_1#1: bytes = φ(coord_1#0 <- block@1) in block@1: // for_header_0_L30 -debug: Added coord_1#1 to Phi node: let coord_1#1: bytes = φ(coord_1#0 <- block@1, coord_1#1 <- block@2) in block@2: // for_header_1_L30 +debug: Added coord_1#0 to Phi node: let coord_1#1: bytes = Phi(coord_1#0 <- block@1) in block@1: // for_header_0_L30 +debug: Added coord_1#1 to Phi node: let coord_1#1: bytes = Phi(coord_1#0 <- block@1, coord_1#1 <- block@2) in block@2: // for_header_1_L30 debug: Replacing trivial Phi node: let coord_1#1: bytes = φ(coord_1#0 <- block@1, coord_1#1 <- block@2) (coord_1#1) with coord_1#0 debug: Deleting Phi assignment: let coord_1#1: bytes = φ(coord_1#0 <- block@1, coord_1#1 <- block@2) debug: Replaced trivial Phi node: let coord_1#1: bytes = φ(coord_1#0 <- block@1, coord_1#1 <- block@2) (coord_1#1) with coord_1#0 in current definition for 3 blocks @@ -322,17 +322,17 @@ debug: Terminated block@1: // ternary_true_L20 debug: Terminated block@2: // ternary_false_L20 debug: Sealing block@3: // ternary_merge_L20 debug: Created Phi assignment: let ternary_result%6#2: uint64 = undefined while trying to resolve 'ternary_result%6' in block@3: // ternary_merge_L20 -debug: Added ternary_result%6#0 to Phi node: let ternary_result%6#2: uint64 = φ(ternary_result%6#0 <- block@1) in block@1: // ternary_true_L20 -debug: Added ternary_result%6#1 to Phi node: let ternary_result%6#2: uint64 = φ(ternary_result%6#0 <- block@1, ternary_result%6#1 <- block@2) in block@2: // ternary_false_L20 +debug: Added ternary_result%6#0 to Phi node: let ternary_result%6#2: uint64 = Phi(ternary_result%6#0 <- block@1) in block@1: // ternary_true_L20 +debug: Added ternary_result%6#1 to Phi node: let ternary_result%6#2: uint64 = Phi(ternary_result%6#0 <- block@1, ternary_result%6#1 <- block@2) in block@2: // ternary_false_L20 debug: Created Phi assignment: let some_bytes#1: bytes = undefined while trying to resolve 'some_bytes' in block@3: // ternary_merge_L20 -debug: Added some_bytes#0 to Phi node: let some_bytes#1: bytes = φ(some_bytes#0 <- block@1) in block@1: // ternary_true_L20 -debug: Added some_bytes#0 to Phi node: let some_bytes#1: bytes = φ(some_bytes#0 <- block@1, some_bytes#0 <- block@2) in block@2: // ternary_false_L20 +debug: Added some_bytes#0 to Phi node: let some_bytes#1: bytes = Phi(some_bytes#0 <- block@1) in block@1: // ternary_true_L20 +debug: Added some_bytes#0 to Phi node: let some_bytes#1: bytes = Phi(some_bytes#0 <- block@1, some_bytes#0 <- block@2) in block@2: // ternary_false_L20 debug: Replacing trivial Phi node: let some_bytes#1: bytes = φ(some_bytes#0 <- block@1, some_bytes#0 <- block@2) (some_bytes#1) with some_bytes#0 debug: Deleting Phi assignment: let some_bytes#1: bytes = φ(some_bytes#0 <- block@1, some_bytes#0 <- block@2) debug: Replaced trivial Phi node: let some_bytes#1: bytes = φ(some_bytes#0 <- block@1, some_bytes#0 <- block@2) (some_bytes#1) with some_bytes#0 in current definition for 1 blocks debug: Created Phi assignment: let some_bytes_as_bytes_again#1: bytes = undefined while trying to resolve 'some_bytes_as_bytes_again' in block@3: // ternary_merge_L20 -debug: Added some_bytes_as_bytes_again#0 to Phi node: let some_bytes_as_bytes_again#1: bytes = φ(some_bytes_as_bytes_again#0 <- block@1) in block@1: // ternary_true_L20 -debug: Added some_bytes_as_bytes_again#0 to Phi node: let some_bytes_as_bytes_again#1: bytes = φ(some_bytes_as_bytes_again#0 <- block@1, some_bytes_as_bytes_again#0 <- block@2) in block@2: // ternary_false_L20 +debug: Added some_bytes_as_bytes_again#0 to Phi node: let some_bytes_as_bytes_again#1: bytes = Phi(some_bytes_as_bytes_again#0 <- block@1) in block@1: // ternary_true_L20 +debug: Added some_bytes_as_bytes_again#0 to Phi node: let some_bytes_as_bytes_again#1: bytes = Phi(some_bytes_as_bytes_again#0 <- block@1, some_bytes_as_bytes_again#0 <- block@2) in block@2: // ternary_false_L20 debug: Replacing trivial Phi node: let some_bytes_as_bytes_again#1: bytes = φ(some_bytes_as_bytes_again#0 <- block@1, some_bytes_as_bytes_again#0 <- block@2) (some_bytes_as_bytes_again#1) with some_bytes_as_bytes_again#0 debug: Deleting Phi assignment: let some_bytes_as_bytes_again#1: bytes = φ(some_bytes_as_bytes_again#0 <- block@1, some_bytes_as_bytes_again#0 <- block@2) debug: Replaced trivial Phi node: let some_bytes_as_bytes_again#1: bytes = φ(some_bytes_as_bytes_again#0 <- block@1, some_bytes_as_bytes_again#0 <- block@2) (some_bytes_as_bytes_again#1) with some_bytes_as_bytes_again#0 in current definition for 1 blocks @@ -347,11 +347,11 @@ debug: Terminated block@1: // ternary_true_L35 debug: Terminated block@2: // ternary_false_L35 debug: Sealing block@3: // ternary_merge_L35 debug: Created Phi assignment: let ternary_result%4#2: uint64 = undefined while trying to resolve 'ternary_result%4' in block@3: // ternary_merge_L35 -debug: Added ternary_result%4#0 to Phi node: let ternary_result%4#2: uint64 = φ(ternary_result%4#0 <- block@1) in block@1: // ternary_true_L35 -debug: Added ternary_result%4#1 to Phi node: let ternary_result%4#2: uint64 = φ(ternary_result%4#0 <- block@1, ternary_result%4#1 <- block@2) in block@2: // ternary_false_L35 +debug: Added ternary_result%4#0 to Phi node: let ternary_result%4#2: uint64 = Phi(ternary_result%4#0 <- block@1) in block@1: // ternary_true_L35 +debug: Added ternary_result%4#1 to Phi node: let ternary_result%4#2: uint64 = Phi(ternary_result%4#0 <- block@1, ternary_result%4#1 <- block@2) in block@2: // ternary_false_L35 debug: Created Phi assignment: let test_bytes#1: bytes = undefined while trying to resolve 'test_bytes' in block@3: // ternary_merge_L35 -debug: Added test_bytes#0 to Phi node: let test_bytes#1: bytes = φ(test_bytes#0 <- block@1) in block@1: // ternary_true_L35 -debug: Added test_bytes#0 to Phi node: let test_bytes#1: bytes = φ(test_bytes#0 <- block@1, test_bytes#0 <- block@2) in block@2: // ternary_false_L35 +debug: Added test_bytes#0 to Phi node: let test_bytes#1: bytes = Phi(test_bytes#0 <- block@1) in block@1: // ternary_true_L35 +debug: Added test_bytes#0 to Phi node: let test_bytes#1: bytes = Phi(test_bytes#0 <- block@1, test_bytes#0 <- block@2) in block@2: // ternary_false_L35 debug: Replacing trivial Phi node: let test_bytes#1: bytes = φ(test_bytes#0 <- block@1, test_bytes#0 <- block@2) (test_bytes#1) with test_bytes#0 debug: Deleting Phi assignment: let test_bytes#1: bytes = φ(test_bytes#0 <- block@1, test_bytes#0 <- block@2) debug: Replaced trivial Phi node: let test_bytes#1: bytes = φ(test_bytes#0 <- block@1, test_bytes#0 <- block@2) (test_bytes#1) with test_bytes#0 in current definition for 1 blocks @@ -362,11 +362,11 @@ debug: Terminated block@4: // ternary_true_L37 debug: Terminated block@5: // ternary_false_L37 debug: Sealing block@6: // ternary_merge_L37 debug: Created Phi assignment: let ternary_result%10#2: uint64 = undefined while trying to resolve 'ternary_result%10' in block@6: // ternary_merge_L37 -debug: Added ternary_result%10#0 to Phi node: let ternary_result%10#2: uint64 = φ(ternary_result%10#0 <- block@4) in block@4: // ternary_true_L37 -debug: Added ternary_result%10#1 to Phi node: let ternary_result%10#2: uint64 = φ(ternary_result%10#0 <- block@4, ternary_result%10#1 <- block@5) in block@5: // ternary_false_L37 +debug: Added ternary_result%10#0 to Phi node: let ternary_result%10#2: uint64 = Phi(ternary_result%10#0 <- block@4) in block@4: // ternary_true_L37 +debug: Added ternary_result%10#1 to Phi node: let ternary_result%10#2: uint64 = Phi(ternary_result%10#0 <- block@4, ternary_result%10#1 <- block@5) in block@5: // ternary_false_L37 debug: Created Phi assignment: let test_bytes#2: bytes = undefined while trying to resolve 'test_bytes' in block@6: // ternary_merge_L37 -debug: Added test_bytes#0 to Phi node: let test_bytes#2: bytes = φ(test_bytes#0 <- block@4) in block@4: // ternary_true_L37 -debug: Added test_bytes#0 to Phi node: let test_bytes#2: bytes = φ(test_bytes#0 <- block@4, test_bytes#0 <- block@5) in block@5: // ternary_false_L37 +debug: Added test_bytes#0 to Phi node: let test_bytes#2: bytes = Phi(test_bytes#0 <- block@4) in block@4: // ternary_true_L37 +debug: Added test_bytes#0 to Phi node: let test_bytes#2: bytes = Phi(test_bytes#0 <- block@4, test_bytes#0 <- block@5) in block@5: // ternary_false_L37 debug: Replacing trivial Phi node: let test_bytes#2: bytes = φ(test_bytes#0 <- block@4, test_bytes#0 <- block@5) (test_bytes#2) with test_bytes#0 debug: Deleting Phi assignment: let test_bytes#2: bytes = φ(test_bytes#0 <- block@4, test_bytes#0 <- block@5) debug: Replaced trivial Phi node: let test_bytes#2: bytes = φ(test_bytes#0 <- block@4, test_bytes#0 <- block@5) (test_bytes#2) with test_bytes#0 in current definition for 1 blocks @@ -377,11 +377,11 @@ debug: Terminated block@7: // ternary_true_L39 debug: Terminated block@8: // ternary_false_L39 debug: Sealing block@9: // ternary_merge_L39 debug: Created Phi assignment: let ternary_result%16#2: uint64 = undefined while trying to resolve 'ternary_result%16' in block@9: // ternary_merge_L39 -debug: Added ternary_result%16#0 to Phi node: let ternary_result%16#2: uint64 = φ(ternary_result%16#0 <- block@7) in block@7: // ternary_true_L39 -debug: Added ternary_result%16#1 to Phi node: let ternary_result%16#2: uint64 = φ(ternary_result%16#0 <- block@7, ternary_result%16#1 <- block@8) in block@8: // ternary_false_L39 +debug: Added ternary_result%16#0 to Phi node: let ternary_result%16#2: uint64 = Phi(ternary_result%16#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added ternary_result%16#1 to Phi node: let ternary_result%16#2: uint64 = Phi(ternary_result%16#0 <- block@7, ternary_result%16#1 <- block@8) in block@8: // ternary_false_L39 debug: Created Phi assignment: let test_bytes#3: bytes = undefined while trying to resolve 'test_bytes' in block@9: // ternary_merge_L39 -debug: Added test_bytes#0 to Phi node: let test_bytes#3: bytes = φ(test_bytes#0 <- block@7) in block@7: // ternary_true_L39 -debug: Added test_bytes#0 to Phi node: let test_bytes#3: bytes = φ(test_bytes#0 <- block@7, test_bytes#0 <- block@8) in block@8: // ternary_false_L39 +debug: Added test_bytes#0 to Phi node: let test_bytes#3: bytes = Phi(test_bytes#0 <- block@7) in block@7: // ternary_true_L39 +debug: Added test_bytes#0 to Phi node: let test_bytes#3: bytes = Phi(test_bytes#0 <- block@7, test_bytes#0 <- block@8) in block@8: // ternary_false_L39 debug: Replacing trivial Phi node: let test_bytes#3: bytes = φ(test_bytes#0 <- block@7, test_bytes#0 <- block@8) (test_bytes#3) with test_bytes#0 debug: Deleting Phi assignment: let test_bytes#3: bytes = φ(test_bytes#0 <- block@7, test_bytes#0 <- block@8) debug: Replaced trivial Phi node: let test_bytes#3: bytes = φ(test_bytes#0 <- block@7, test_bytes#0 <- block@8) (test_bytes#3) with test_bytes#0 in current definition for 1 blocks @@ -392,11 +392,11 @@ debug: Terminated block@10: // ternary_true_L40 debug: Terminated block@11: // ternary_false_L40 debug: Sealing block@12: // ternary_merge_L40 debug: Created Phi assignment: let ternary_result%22#2: uint64 = undefined while trying to resolve 'ternary_result%22' in block@12: // ternary_merge_L40 -debug: Added ternary_result%22#0 to Phi node: let ternary_result%22#2: uint64 = φ(ternary_result%22#0 <- block@10) in block@10: // ternary_true_L40 -debug: Added ternary_result%22#1 to Phi node: let ternary_result%22#2: uint64 = φ(ternary_result%22#0 <- block@10, ternary_result%22#1 <- block@11) in block@11: // ternary_false_L40 +debug: Added ternary_result%22#0 to Phi node: let ternary_result%22#2: uint64 = Phi(ternary_result%22#0 <- block@10) in block@10: // ternary_true_L40 +debug: Added ternary_result%22#1 to Phi node: let ternary_result%22#2: uint64 = Phi(ternary_result%22#0 <- block@10, ternary_result%22#1 <- block@11) in block@11: // ternary_false_L40 debug: Created Phi assignment: let test_bytes#4: bytes = undefined while trying to resolve 'test_bytes' in block@12: // ternary_merge_L40 -debug: Added test_bytes#0 to Phi node: let test_bytes#4: bytes = φ(test_bytes#0 <- block@10) in block@10: // ternary_true_L40 -debug: Added test_bytes#0 to Phi node: let test_bytes#4: bytes = φ(test_bytes#0 <- block@10, test_bytes#0 <- block@11) in block@11: // ternary_false_L40 +debug: Added test_bytes#0 to Phi node: let test_bytes#4: bytes = Phi(test_bytes#0 <- block@10) in block@10: // ternary_true_L40 +debug: Added test_bytes#0 to Phi node: let test_bytes#4: bytes = Phi(test_bytes#0 <- block@10, test_bytes#0 <- block@11) in block@11: // ternary_false_L40 debug: Replacing trivial Phi node: let test_bytes#4: bytes = φ(test_bytes#0 <- block@10, test_bytes#0 <- block@11) (test_bytes#4) with test_bytes#0 debug: Deleting Phi assignment: let test_bytes#4: bytes = φ(test_bytes#0 <- block@10, test_bytes#0 <- block@11) debug: Replaced trivial Phi node: let test_bytes#4: bytes = φ(test_bytes#0 <- block@10, test_bytes#0 <- block@11) (test_bytes#4) with test_bytes#0 in current definition for 1 blocks @@ -407,8 +407,8 @@ debug: Terminated block@13: // ternary_true_L41 debug: Terminated block@14: // ternary_false_L41 debug: Sealing block@15: // ternary_merge_L41 debug: Created Phi assignment: let ternary_result%28#2: uint64 = undefined while trying to resolve 'ternary_result%28' in block@15: // ternary_merge_L41 -debug: Added ternary_result%28#0 to Phi node: let ternary_result%28#2: uint64 = φ(ternary_result%28#0 <- block@13) in block@13: // ternary_true_L41 -debug: Added ternary_result%28#1 to Phi node: let ternary_result%28#2: uint64 = φ(ternary_result%28#0 <- block@13, ternary_result%28#1 <- block@14) in block@14: // ternary_false_L41 +debug: Added ternary_result%28#0 to Phi node: let ternary_result%28#2: uint64 = Phi(ternary_result%28#0 <- block@13) in block@13: // ternary_true_L41 +debug: Added ternary_result%28#1 to Phi node: let ternary_result%28#2: uint64 = Phi(ternary_result%28#0 <- block@13, ternary_result%28#1 <- block@14) in block@14: // ternary_false_L41 debug: Terminated block@15: // ternary_merge_L41 debug: Sealing block@0: // L68 debug: Terminated block@0: // L68 @@ -458,10 +458,10 @@ debug: Sealing block@3: // for_footer_L24 debug: Sealing block@None: // after_for_L24 debug: Terminated block@3: // for_footer_L24 debug: Sealing block@1: // for_header_L24 -debug: Added item_index_internal%3#0 to Phi node: let item_index_internal%3#1: uint64 = φ(item_index_internal%3#0 <- block@0) in block@0: // L21 -debug: Added item_index_internal%3#2 to Phi node: let item_index_internal%3#1: uint64 = φ(item_index_internal%3#0 <- block@0, item_index_internal%3#2 <- block@3) in block@3: // for_footer_L24 -debug: Added total#0 to Phi node: let total#1: uint64 = φ(total#0 <- block@0) in block@0: // L21 -debug: Added total#2 to Phi node: let total#1: uint64 = φ(total#0 <- block@0, total#2 <- block@3) in block@3: // for_footer_L24 +debug: Added item_index_internal%3#0 to Phi node: let item_index_internal%3#1: uint64 = Phi(item_index_internal%3#0 <- block@0) in block@0: // L21 +debug: Added item_index_internal%3#2 to Phi node: let item_index_internal%3#1: uint64 = Phi(item_index_internal%3#0 <- block@0, item_index_internal%3#2 <- block@3) in block@3: // for_footer_L24 +debug: Added total#0 to Phi node: let total#1: uint64 = Phi(total#0 <- block@0) in block@0: // L21 +debug: Added total#2 to Phi node: let total#1: uint64 = Phi(total#0 <- block@0, total#2 <- block@3) in block@3: // for_footer_L24 debug: Terminated block@4: // after_for_L24 debug: Looking for 'item_index_internal%11' in an unsealed block creating an incomplete Phi: block@5: // for_header_L29 debug: Created Phi assignment: let item_index_internal%11#1: uint64 = undefined while trying to resolve 'item_index_internal%11' in block@5: // for_header_L29 @@ -474,10 +474,10 @@ debug: Sealing block@7: // for_footer_L29 debug: Sealing block@None: // after_for_L29 debug: Terminated block@7: // for_footer_L29 debug: Sealing block@5: // for_header_L29 -debug: Added item_index_internal%11#0 to Phi node: let item_index_internal%11#1: uint64 = φ(item_index_internal%11#0 <- block@4) in block@4: // after_for_L24 -debug: Added item_index_internal%11#2 to Phi node: let item_index_internal%11#1: uint64 = φ(item_index_internal%11#0 <- block@4, item_index_internal%11#2 <- block@7) in block@7: // for_footer_L29 -debug: Added total#1 to Phi node: let total#3: uint64 = φ(total#1 <- block@4) in block@4: // after_for_L24 -debug: Added total#4 to Phi node: let total#3: uint64 = φ(total#1 <- block@4, total#4 <- block@7) in block@7: // for_footer_L29 +debug: Added item_index_internal%11#0 to Phi node: let item_index_internal%11#1: uint64 = Phi(item_index_internal%11#0 <- block@4) in block@4: // after_for_L24 +debug: Added item_index_internal%11#2 to Phi node: let item_index_internal%11#1: uint64 = Phi(item_index_internal%11#0 <- block@4, item_index_internal%11#2 <- block@7) in block@7: // for_footer_L29 +debug: Added total#1 to Phi node: let total#3: uint64 = Phi(total#1 <- block@4) in block@4: // after_for_L24 +debug: Added total#4 to Phi node: let total#3: uint64 = Phi(total#1 <- block@4, total#4 <- block@7) in block@7: // for_footer_L29 debug: Terminated block@8: // after_for_L29 debug: Looking for 'item_index_internal%37' in an unsealed block creating an incomplete Phi: block@9: // for_header_L36 debug: Created Phi assignment: let item_index_internal%37#1: uint64 = undefined while trying to resolve 'item_index_internal%37' in block@9: // for_header_L36 @@ -495,20 +495,20 @@ debug: Terminated block@13: // after_if_else_L37 debug: Sealing block@14: // for_footer_L36 debug: Sealing block@None: // after_for_L36 debug: Created Phi assignment: let item_index_internal%37#2: uint64 = undefined while trying to resolve 'item_index_internal%37' in block@13: // after_if_else_L37 -debug: Added item_index_internal%37#1 to Phi node: let item_index_internal%37#2: uint64 = φ(item_index_internal%37#1 <- block@11) in block@11: // if_body_L37 -debug: Added item_index_internal%37#1 to Phi node: let item_index_internal%37#2: uint64 = φ(item_index_internal%37#1 <- block@11, item_index_internal%37#1 <- block@12) in block@12: // else_body_L37 +debug: Added item_index_internal%37#1 to Phi node: let item_index_internal%37#2: uint64 = Phi(item_index_internal%37#1 <- block@11) in block@11: // if_body_L37 +debug: Added item_index_internal%37#1 to Phi node: let item_index_internal%37#2: uint64 = Phi(item_index_internal%37#1 <- block@11, item_index_internal%37#1 <- block@12) in block@12: // else_body_L37 debug: Replacing trivial Phi node: let item_index_internal%37#2: uint64 = φ(item_index_internal%37#1 <- block@11, item_index_internal%37#1 <- block@12) (item_index_internal%37#2) with item_index_internal%37#1 debug: Deleting Phi assignment: let item_index_internal%37#2: uint64 = φ(item_index_internal%37#1 <- block@11, item_index_internal%37#1 <- block@12) debug: Replaced trivial Phi node: let item_index_internal%37#2: uint64 = φ(item_index_internal%37#1 <- block@11, item_index_internal%37#1 <- block@12) (item_index_internal%37#2) with item_index_internal%37#1 in current definition for 1 blocks debug: Terminated block@14: // for_footer_L36 debug: Sealing block@9: // for_header_L36 -debug: Added item_index_internal%37#0 to Phi node: let item_index_internal%37#1: uint64 = φ(item_index_internal%37#0 <- block@8) in block@8: // after_for_L29 -debug: Added item_index_internal%37#3 to Phi node: let item_index_internal%37#1: uint64 = φ(item_index_internal%37#0 <- block@8, item_index_internal%37#3 <- block@14) in block@14: // for_footer_L36 -debug: Added result#0 to Phi node: let result#2: bytes = φ(result#0 <- block@8) in block@8: // after_for_L29 +debug: Added item_index_internal%37#0 to Phi node: let item_index_internal%37#1: uint64 = Phi(item_index_internal%37#0 <- block@8) in block@8: // after_for_L29 +debug: Added item_index_internal%37#3 to Phi node: let item_index_internal%37#1: uint64 = Phi(item_index_internal%37#0 <- block@8, item_index_internal%37#3 <- block@14) in block@14: // for_footer_L36 +debug: Added result#0 to Phi node: let result#2: bytes = Phi(result#0 <- block@8) in block@8: // after_for_L29 debug: Created Phi assignment: let result#4: bytes = undefined while trying to resolve 'result' in block@13: // after_if_else_L37 -debug: Added result#1 to Phi node: let result#4: bytes = φ(result#1 <- block@11) in block@11: // if_body_L37 -debug: Added result#3 to Phi node: let result#4: bytes = φ(result#1 <- block@11, result#3 <- block@12) in block@12: // else_body_L37 -debug: Added result#4 to Phi node: let result#2: bytes = φ(result#0 <- block@8, result#4 <- block@14) in block@14: // for_footer_L36 +debug: Added result#1 to Phi node: let result#4: bytes = Phi(result#1 <- block@11) in block@11: // if_body_L37 +debug: Added result#3 to Phi node: let result#4: bytes = Phi(result#1 <- block@11, result#3 <- block@12) in block@12: // else_body_L37 +debug: Added result#4 to Phi node: let result#2: bytes = Phi(result#0 <- block@8, result#4 <- block@14) in block@14: // for_footer_L36 debug: Terminated block@15: // after_for_L36 debug: Looking for 'item_index_internal%48' in an unsealed block creating an incomplete Phi: block@16: // for_header_L46 debug: Created Phi assignment: let item_index_internal%48#1: uint64 = undefined while trying to resolve 'item_index_internal%48' in block@16: // for_header_L46 @@ -521,22 +521,22 @@ debug: Sealing block@18: // for_footer_L46 debug: Sealing block@None: // after_for_L46 debug: Terminated block@18: // for_footer_L46 debug: Sealing block@16: // for_header_L46 -debug: Added item_index_internal%48#0 to Phi node: let item_index_internal%48#1: uint64 = φ(item_index_internal%48#0 <- block@15) in block@15: // after_for_L36 -debug: Added item_index_internal%48#2 to Phi node: let item_index_internal%48#1: uint64 = φ(item_index_internal%48#0 <- block@15, item_index_internal%48#2 <- block@18) in block@18: // for_footer_L46 +debug: Added item_index_internal%48#0 to Phi node: let item_index_internal%48#1: uint64 = Phi(item_index_internal%48#0 <- block@15) in block@15: // after_for_L36 +debug: Added item_index_internal%48#2 to Phi node: let item_index_internal%48#1: uint64 = Phi(item_index_internal%48#0 <- block@15, item_index_internal%48#2 <- block@18) in block@18: // for_footer_L46 debug: Created Phi assignment: let total#7: uint64 = undefined while trying to resolve 'total' in block@9: // for_header_L36 -debug: Added total#3 to Phi node: let total#7: uint64 = φ(total#3 <- block@8) in block@8: // after_for_L29 +debug: Added total#3 to Phi node: let total#7: uint64 = Phi(total#3 <- block@8) in block@8: // after_for_L29 debug: Created Phi assignment: let total#8: uint64 = undefined while trying to resolve 'total' in block@13: // after_if_else_L37 -debug: Added total#7 to Phi node: let total#8: uint64 = φ(total#7 <- block@11) in block@11: // if_body_L37 -debug: Added total#7 to Phi node: let total#8: uint64 = φ(total#7 <- block@11, total#7 <- block@12) in block@12: // else_body_L37 +debug: Added total#7 to Phi node: let total#8: uint64 = Phi(total#7 <- block@11) in block@11: // if_body_L37 +debug: Added total#7 to Phi node: let total#8: uint64 = Phi(total#7 <- block@11, total#7 <- block@12) in block@12: // else_body_L37 debug: Replacing trivial Phi node: let total#8: uint64 = φ(total#7 <- block@11, total#7 <- block@12) (total#8) with total#7 debug: Deleting Phi assignment: let total#8: uint64 = φ(total#7 <- block@11, total#7 <- block@12) debug: Replaced trivial Phi node: let total#8: uint64 = φ(total#7 <- block@11, total#7 <- block@12) (total#8) with total#7 in current definition for 1 blocks -debug: Added total#7 to Phi node: let total#7: uint64 = φ(total#3 <- block@8, total#7 <- block@14) in block@14: // for_footer_L36 +debug: Added total#7 to Phi node: let total#7: uint64 = Phi(total#3 <- block@8, total#7 <- block@14) in block@14: // for_footer_L36 debug: Replacing trivial Phi node: let total#7: uint64 = φ(total#3 <- block@8, total#7 <- block@14) (total#7) with total#3 debug: Deleting Phi assignment: let total#7: uint64 = φ(total#3 <- block@8, total#7 <- block@14) debug: Replaced trivial Phi node: let total#7: uint64 = φ(total#3 <- block@8, total#7 <- block@14) (total#7) with total#3 in current definition for 6 blocks -debug: Added total#3 to Phi node: let total#5: uint64 = φ(total#3 <- block@15) in block@15: // after_for_L36 -debug: Added total#6 to Phi node: let total#5: uint64 = φ(total#3 <- block@15, total#6 <- block@18) in block@18: // for_footer_L46 +debug: Added total#3 to Phi node: let total#5: uint64 = Phi(total#3 <- block@15) in block@15: // after_for_L36 +debug: Added total#6 to Phi node: let total#5: uint64 = Phi(total#3 <- block@15, total#6 <- block@18) in block@18: // for_footer_L46 debug: Terminated block@19: // after_for_L46 debug: Looking for 'item_index_internal%72' in an unsealed block creating an incomplete Phi: block@20: // for_header_L60 debug: Created Phi assignment: let item_index_internal%72#1: uint64 = undefined while trying to resolve 'item_index_internal%72' in block@20: // for_header_L60 @@ -554,20 +554,20 @@ debug: Terminated block@24: // after_if_else_L61 debug: Sealing block@25: // for_footer_L60 debug: Sealing block@None: // after_for_L60 debug: Created Phi assignment: let item_index_internal%72#2: uint64 = undefined while trying to resolve 'item_index_internal%72' in block@24: // after_if_else_L61 -debug: Added item_index_internal%72#1 to Phi node: let item_index_internal%72#2: uint64 = φ(item_index_internal%72#1 <- block@22) in block@22: // if_body_L61 -debug: Added item_index_internal%72#1 to Phi node: let item_index_internal%72#2: uint64 = φ(item_index_internal%72#1 <- block@22, item_index_internal%72#1 <- block@23) in block@23: // else_body_L61 +debug: Added item_index_internal%72#1 to Phi node: let item_index_internal%72#2: uint64 = Phi(item_index_internal%72#1 <- block@22) in block@22: // if_body_L61 +debug: Added item_index_internal%72#1 to Phi node: let item_index_internal%72#2: uint64 = Phi(item_index_internal%72#1 <- block@22, item_index_internal%72#1 <- block@23) in block@23: // else_body_L61 debug: Replacing trivial Phi node: let item_index_internal%72#2: uint64 = φ(item_index_internal%72#1 <- block@22, item_index_internal%72#1 <- block@23) (item_index_internal%72#2) with item_index_internal%72#1 debug: Deleting Phi assignment: let item_index_internal%72#2: uint64 = φ(item_index_internal%72#1 <- block@22, item_index_internal%72#1 <- block@23) debug: Replaced trivial Phi node: let item_index_internal%72#2: uint64 = φ(item_index_internal%72#1 <- block@22, item_index_internal%72#1 <- block@23) (item_index_internal%72#2) with item_index_internal%72#1 in current definition for 1 blocks debug: Terminated block@25: // for_footer_L60 debug: Sealing block@20: // for_header_L60 -debug: Added item_index_internal%72#0 to Phi node: let item_index_internal%72#1: uint64 = φ(item_index_internal%72#0 <- block@19) in block@19: // after_for_L46 -debug: Added item_index_internal%72#3 to Phi node: let item_index_internal%72#1: uint64 = φ(item_index_internal%72#0 <- block@19, item_index_internal%72#3 <- block@25) in block@25: // for_footer_L60 -debug: Added result#5 to Phi node: let result#7: bytes = φ(result#5 <- block@19) in block@19: // after_for_L46 +debug: Added item_index_internal%72#0 to Phi node: let item_index_internal%72#1: uint64 = Phi(item_index_internal%72#0 <- block@19) in block@19: // after_for_L46 +debug: Added item_index_internal%72#3 to Phi node: let item_index_internal%72#1: uint64 = Phi(item_index_internal%72#0 <- block@19, item_index_internal%72#3 <- block@25) in block@25: // for_footer_L60 +debug: Added result#5 to Phi node: let result#7: bytes = Phi(result#5 <- block@19) in block@19: // after_for_L46 debug: Created Phi assignment: let result#9: bytes = undefined while trying to resolve 'result' in block@24: // after_if_else_L61 -debug: Added result#6 to Phi node: let result#9: bytes = φ(result#6 <- block@22) in block@22: // if_body_L61 -debug: Added result#8 to Phi node: let result#9: bytes = φ(result#6 <- block@22, result#8 <- block@23) in block@23: // else_body_L61 -debug: Added result#9 to Phi node: let result#7: bytes = φ(result#5 <- block@19, result#9 <- block@25) in block@25: // for_footer_L60 +debug: Added result#6 to Phi node: let result#9: bytes = Phi(result#6 <- block@22) in block@22: // if_body_L61 +debug: Added result#8 to Phi node: let result#9: bytes = Phi(result#6 <- block@22, result#8 <- block@23) in block@23: // else_body_L61 +debug: Added result#9 to Phi node: let result#7: bytes = Phi(result#5 <- block@19, result#9 <- block@25) in block@25: // for_footer_L60 debug: Terminated block@26: // after_for_L60 debug: Sealing block@0: // L70 debug: Terminated block@0: // L70 diff --git a/examples/augmented_assignment/puya.log b/examples/augmented_assignment/puya.log index 791a5ec17d..8222b2cc4c 100644 --- a/examples/augmented_assignment/puya.log +++ b/examples/augmented_assignment/puya.log @@ -19,8 +19,8 @@ debug: Terminated block@4: // after_if_else_L14 debug: Sealing block@None: // if_body_L17 debug: Sealing block@None: // else_body_L17 debug: Created Phi assignment: let me#1: bytes = undefined while trying to resolve 'me' in block@4: // after_if_else_L14 -debug: Added me#0 to Phi node: let me#1: bytes = φ(me#0 <- block@2) in block@2: // entrypoint_L5 -debug: Added me#0 to Phi node: let me#1: bytes = φ(me#0 <- block@2, me#0 <- block@3) in block@3: // if_body_L14 +debug: Added me#0 to Phi node: let me#1: bytes = Phi(me#0 <- block@2) in block@2: // entrypoint_L5 +debug: Added me#0 to Phi node: let me#1: bytes = Phi(me#0 <- block@2, me#0 <- block@3) in block@3: // if_body_L14 debug: Replacing trivial Phi node: let me#1: bytes = φ(me#0 <- block@2, me#0 <- block@3) (me#1) with me#0 debug: Deleting Phi assignment: let me#1: bytes = φ(me#0 <- block@2, me#0 <- block@3) debug: Replaced trivial Phi node: let me#1: bytes = φ(me#0 <- block@2, me#0 <- block@3) (me#1) with me#0 in current definition for 1 blocks diff --git a/examples/boolean_binary_ops/puya.log b/examples/boolean_binary_ops/puya.log index a87a44eafa..12629989cc 100644 --- a/examples/boolean_binary_ops/puya.log +++ b/examples/boolean_binary_ops/puya.log @@ -18,15 +18,15 @@ debug: Terminated block@5: // for_header_1_L35 debug: Sealing block@None: // for_body_L35 debug: Created Phi assignment: let lhs#2: uint64 = undefined while trying to resolve 'lhs' in block@6: // for_body_L35 debug: Created Phi assignment: let lhs#3: uint64 = undefined while trying to resolve 'lhs' in block@3: // for_body_L34 -debug: Added lhs#0 to Phi node: let lhs#3: uint64 = φ(lhs#0 <- block@1) in block@1: // for_header_0_L34 -debug: Added lhs#1 to Phi node: let lhs#3: uint64 = φ(lhs#0 <- block@1, lhs#1 <- block@2) in block@2: // for_header_1_L34 -debug: Added lhs#3 to Phi node: let lhs#2: uint64 = φ(lhs#3 <- block@4) in block@4: // for_header_0_L35 +debug: Added lhs#0 to Phi node: let lhs#3: uint64 = Phi(lhs#0 <- block@1) in block@1: // for_header_0_L34 +debug: Added lhs#1 to Phi node: let lhs#3: uint64 = Phi(lhs#0 <- block@1, lhs#1 <- block@2) in block@2: // for_header_1_L34 +debug: Added lhs#3 to Phi node: let lhs#2: uint64 = Phi(lhs#3 <- block@4) in block@4: // for_header_0_L35 debug: Looking for 'lhs' in an unsealed block creating an incomplete Phi: block@5: // for_header_1_L35 debug: Created Phi assignment: let lhs#4: uint64 = undefined while trying to resolve 'lhs' in block@5: // for_header_1_L35 -debug: Added lhs#4 to Phi node: let lhs#2: uint64 = φ(lhs#3 <- block@4, lhs#4 <- block@5) in block@5: // for_header_1_L35 +debug: Added lhs#4 to Phi node: let lhs#2: uint64 = Phi(lhs#3 <- block@4, lhs#4 <- block@5) in block@5: // for_header_1_L35 debug: Created Phi assignment: let rhs#2: uint64 = undefined while trying to resolve 'rhs' in block@6: // for_body_L35 -debug: Added rhs#0 to Phi node: let rhs#2: uint64 = φ(rhs#0 <- block@4) in block@4: // for_header_0_L35 -debug: Added rhs#1 to Phi node: let rhs#2: uint64 = φ(rhs#0 <- block@4, rhs#1 <- block@5) in block@5: // for_header_1_L35 +debug: Added rhs#0 to Phi node: let rhs#2: uint64 = Phi(rhs#0 <- block@4) in block@4: // for_header_0_L35 +debug: Added rhs#1 to Phi node: let rhs#2: uint64 = Phi(rhs#0 <- block@4, rhs#1 <- block@5) in block@5: // for_header_1_L35 debug: Terminated block@6: // for_body_L35 debug: Sealing block@None: // and_contd_L37 debug: Terminated block@7: // and_contd_L37 @@ -36,29 +36,29 @@ debug: Terminated block@8: // bool_true_L37 debug: Terminated block@9: // bool_false_L37 debug: Sealing block@10: // bool_merge_L37 debug: Created Phi assignment: let and_result%10#2: uint64 = undefined while trying to resolve 'and_result%10' in block@10: // bool_merge_L37 -debug: Added and_result%10#0 to Phi node: let and_result%10#2: uint64 = φ(and_result%10#0 <- block@8) in block@8: // bool_true_L37 -debug: Added and_result%10#1 to Phi node: let and_result%10#2: uint64 = φ(and_result%10#0 <- block@8, and_result%10#1 <- block@9) in block@9: // bool_false_L37 +debug: Added and_result%10#0 to Phi node: let and_result%10#2: uint64 = Phi(and_result%10#0 <- block@8) in block@8: // bool_true_L37 +debug: Added and_result%10#1 to Phi node: let and_result%10#2: uint64 = Phi(and_result%10#0 <- block@8, and_result%10#1 <- block@9) in block@9: // bool_false_L37 debug: Created Phi assignment: let lhs#5: uint64 = undefined while trying to resolve 'lhs' in block@10: // bool_merge_L37 -debug: Added lhs#2 to Phi node: let lhs#5: uint64 = φ(lhs#2 <- block@8) in block@8: // bool_true_L37 +debug: Added lhs#2 to Phi node: let lhs#5: uint64 = Phi(lhs#2 <- block@8) in block@8: // bool_true_L37 debug: Created Phi assignment: let lhs#6: uint64 = undefined while trying to resolve 'lhs' in block@9: // bool_false_L37 -debug: Added lhs#2 to Phi node: let lhs#6: uint64 = φ(lhs#2 <- block@6) in block@6: // for_body_L35 -debug: Added lhs#2 to Phi node: let lhs#6: uint64 = φ(lhs#2 <- block@6, lhs#2 <- block@7) in block@7: // and_contd_L37 +debug: Added lhs#2 to Phi node: let lhs#6: uint64 = Phi(lhs#2 <- block@6) in block@6: // for_body_L35 +debug: Added lhs#2 to Phi node: let lhs#6: uint64 = Phi(lhs#2 <- block@6, lhs#2 <- block@7) in block@7: // and_contd_L37 debug: Replacing trivial Phi node: let lhs#6: uint64 = φ(lhs#2 <- block@6, lhs#2 <- block@7) (lhs#6) with lhs#2 debug: Deleting Phi assignment: let lhs#6: uint64 = φ(lhs#2 <- block@6, lhs#2 <- block@7) debug: Replaced trivial Phi node: let lhs#6: uint64 = φ(lhs#2 <- block@6, lhs#2 <- block@7) (lhs#6) with lhs#2 in current definition for 1 blocks -debug: Added lhs#2 to Phi node: let lhs#5: uint64 = φ(lhs#2 <- block@8, lhs#2 <- block@9) in block@9: // bool_false_L37 +debug: Added lhs#2 to Phi node: let lhs#5: uint64 = Phi(lhs#2 <- block@8, lhs#2 <- block@9) in block@9: // bool_false_L37 debug: Replacing trivial Phi node: let lhs#5: uint64 = φ(lhs#2 <- block@8, lhs#2 <- block@9) (lhs#5) with lhs#2 debug: Deleting Phi assignment: let lhs#5: uint64 = φ(lhs#2 <- block@8, lhs#2 <- block@9) debug: Replaced trivial Phi node: let lhs#5: uint64 = φ(lhs#2 <- block@8, lhs#2 <- block@9) (lhs#5) with lhs#2 in current definition for 1 blocks debug: Created Phi assignment: let rhs#3: uint64 = undefined while trying to resolve 'rhs' in block@10: // bool_merge_L37 -debug: Added rhs#2 to Phi node: let rhs#3: uint64 = φ(rhs#2 <- block@8) in block@8: // bool_true_L37 +debug: Added rhs#2 to Phi node: let rhs#3: uint64 = Phi(rhs#2 <- block@8) in block@8: // bool_true_L37 debug: Created Phi assignment: let rhs#4: uint64 = undefined while trying to resolve 'rhs' in block@9: // bool_false_L37 -debug: Added rhs#2 to Phi node: let rhs#4: uint64 = φ(rhs#2 <- block@6) in block@6: // for_body_L35 -debug: Added rhs#2 to Phi node: let rhs#4: uint64 = φ(rhs#2 <- block@6, rhs#2 <- block@7) in block@7: // and_contd_L37 +debug: Added rhs#2 to Phi node: let rhs#4: uint64 = Phi(rhs#2 <- block@6) in block@6: // for_body_L35 +debug: Added rhs#2 to Phi node: let rhs#4: uint64 = Phi(rhs#2 <- block@6, rhs#2 <- block@7) in block@7: // and_contd_L37 debug: Replacing trivial Phi node: let rhs#4: uint64 = φ(rhs#2 <- block@6, rhs#2 <- block@7) (rhs#4) with rhs#2 debug: Deleting Phi assignment: let rhs#4: uint64 = φ(rhs#2 <- block@6, rhs#2 <- block@7) debug: Replaced trivial Phi node: let rhs#4: uint64 = φ(rhs#2 <- block@6, rhs#2 <- block@7) (rhs#4) with rhs#2 in current definition for 1 blocks -debug: Added rhs#2 to Phi node: let rhs#3: uint64 = φ(rhs#2 <- block@8, rhs#2 <- block@9) in block@9: // bool_false_L37 +debug: Added rhs#2 to Phi node: let rhs#3: uint64 = Phi(rhs#2 <- block@8, rhs#2 <- block@9) in block@9: // bool_false_L37 debug: Replacing trivial Phi node: let rhs#3: uint64 = φ(rhs#2 <- block@8, rhs#2 <- block@9) (rhs#3) with rhs#2 debug: Deleting Phi assignment: let rhs#3: uint64 = φ(rhs#2 <- block@8, rhs#2 <- block@9) debug: Replaced trivial Phi node: let rhs#3: uint64 = φ(rhs#2 <- block@8, rhs#2 <- block@9) (rhs#3) with rhs#2 in current definition for 1 blocks @@ -71,29 +71,29 @@ debug: Terminated block@12: // bool_true_L42 debug: Terminated block@13: // bool_false_L42 debug: Sealing block@14: // bool_merge_L42 debug: Created Phi assignment: let or_result%21#2: uint64 = undefined while trying to resolve 'or_result%21' in block@14: // bool_merge_L42 -debug: Added or_result%21#0 to Phi node: let or_result%21#2: uint64 = φ(or_result%21#0 <- block@12) in block@12: // bool_true_L42 -debug: Added or_result%21#1 to Phi node: let or_result%21#2: uint64 = φ(or_result%21#0 <- block@12, or_result%21#1 <- block@13) in block@13: // bool_false_L42 +debug: Added or_result%21#0 to Phi node: let or_result%21#2: uint64 = Phi(or_result%21#0 <- block@12) in block@12: // bool_true_L42 +debug: Added or_result%21#1 to Phi node: let or_result%21#2: uint64 = Phi(or_result%21#0 <- block@12, or_result%21#1 <- block@13) in block@13: // bool_false_L42 debug: Created Phi assignment: let lhs#7: uint64 = undefined while trying to resolve 'lhs' in block@14: // bool_merge_L42 debug: Created Phi assignment: let lhs#8: uint64 = undefined while trying to resolve 'lhs' in block@12: // bool_true_L42 -debug: Added lhs#2 to Phi node: let lhs#8: uint64 = φ(lhs#2 <- block@10) in block@10: // bool_merge_L37 -debug: Added lhs#2 to Phi node: let lhs#8: uint64 = φ(lhs#2 <- block@10, lhs#2 <- block@11) in block@11: // or_contd_L42 +debug: Added lhs#2 to Phi node: let lhs#8: uint64 = Phi(lhs#2 <- block@10) in block@10: // bool_merge_L37 +debug: Added lhs#2 to Phi node: let lhs#8: uint64 = Phi(lhs#2 <- block@10, lhs#2 <- block@11) in block@11: // or_contd_L42 debug: Replacing trivial Phi node: let lhs#8: uint64 = φ(lhs#2 <- block@10, lhs#2 <- block@11) (lhs#8) with lhs#2 debug: Deleting Phi assignment: let lhs#8: uint64 = φ(lhs#2 <- block@10, lhs#2 <- block@11) debug: Replaced trivial Phi node: let lhs#8: uint64 = φ(lhs#2 <- block@10, lhs#2 <- block@11) (lhs#8) with lhs#2 in current definition for 1 blocks -debug: Added lhs#2 to Phi node: let lhs#7: uint64 = φ(lhs#2 <- block@12) in block@12: // bool_true_L42 -debug: Added lhs#2 to Phi node: let lhs#7: uint64 = φ(lhs#2 <- block@12, lhs#2 <- block@13) in block@13: // bool_false_L42 +debug: Added lhs#2 to Phi node: let lhs#7: uint64 = Phi(lhs#2 <- block@12) in block@12: // bool_true_L42 +debug: Added lhs#2 to Phi node: let lhs#7: uint64 = Phi(lhs#2 <- block@12, lhs#2 <- block@13) in block@13: // bool_false_L42 debug: Replacing trivial Phi node: let lhs#7: uint64 = φ(lhs#2 <- block@12, lhs#2 <- block@13) (lhs#7) with lhs#2 debug: Deleting Phi assignment: let lhs#7: uint64 = φ(lhs#2 <- block@12, lhs#2 <- block@13) debug: Replaced trivial Phi node: let lhs#7: uint64 = φ(lhs#2 <- block@12, lhs#2 <- block@13) (lhs#7) with lhs#2 in current definition for 1 blocks debug: Created Phi assignment: let rhs#5: uint64 = undefined while trying to resolve 'rhs' in block@14: // bool_merge_L42 debug: Created Phi assignment: let rhs#6: uint64 = undefined while trying to resolve 'rhs' in block@12: // bool_true_L42 -debug: Added rhs#2 to Phi node: let rhs#6: uint64 = φ(rhs#2 <- block@10) in block@10: // bool_merge_L37 -debug: Added rhs#2 to Phi node: let rhs#6: uint64 = φ(rhs#2 <- block@10, rhs#2 <- block@11) in block@11: // or_contd_L42 +debug: Added rhs#2 to Phi node: let rhs#6: uint64 = Phi(rhs#2 <- block@10) in block@10: // bool_merge_L37 +debug: Added rhs#2 to Phi node: let rhs#6: uint64 = Phi(rhs#2 <- block@10, rhs#2 <- block@11) in block@11: // or_contd_L42 debug: Replacing trivial Phi node: let rhs#6: uint64 = φ(rhs#2 <- block@10, rhs#2 <- block@11) (rhs#6) with rhs#2 debug: Deleting Phi assignment: let rhs#6: uint64 = φ(rhs#2 <- block@10, rhs#2 <- block@11) debug: Replaced trivial Phi node: let rhs#6: uint64 = φ(rhs#2 <- block@10, rhs#2 <- block@11) (rhs#6) with rhs#2 in current definition for 1 blocks -debug: Added rhs#2 to Phi node: let rhs#5: uint64 = φ(rhs#2 <- block@12) in block@12: // bool_true_L42 -debug: Added rhs#2 to Phi node: let rhs#5: uint64 = φ(rhs#2 <- block@12, rhs#2 <- block@13) in block@13: // bool_false_L42 +debug: Added rhs#2 to Phi node: let rhs#5: uint64 = Phi(rhs#2 <- block@12) in block@12: // bool_true_L42 +debug: Added rhs#2 to Phi node: let rhs#5: uint64 = Phi(rhs#2 <- block@12, rhs#2 <- block@13) in block@13: // bool_false_L42 debug: Replacing trivial Phi node: let rhs#5: uint64 = φ(rhs#2 <- block@12, rhs#2 <- block@13) (rhs#5) with rhs#2 debug: Deleting Phi assignment: let rhs#5: uint64 = φ(rhs#2 <- block@12, rhs#2 <- block@13) debug: Replaced trivial Phi node: let rhs#5: uint64 = φ(rhs#2 <- block@12, rhs#2 <- block@13) (rhs#5) with rhs#2 in current definition for 1 blocks @@ -103,41 +103,41 @@ debug: Created Phi assignment: let tuple_index%1#1: uint64 = undefined while try debug: Created Phi assignment: let tuple_index%1#2: uint64 = undefined while trying to resolve 'tuple_index%1' in block@12: // bool_true_L42 debug: Created Phi assignment: let tuple_index%1#3: uint64 = undefined while trying to resolve 'tuple_index%1' in block@10: // bool_merge_L37 debug: Created Phi assignment: let tuple_index%1#4: uint64 = undefined while trying to resolve 'tuple_index%1' in block@6: // for_body_L35 -debug: Added tuple_index%1#0 to Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#0 <- block@4) in block@4: // for_header_0_L35 +debug: Added tuple_index%1#0 to Phi node: let tuple_index%1#4: uint64 = Phi(tuple_index%1#0 <- block@4) in block@4: // for_header_0_L35 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@5: // for_header_1_L35 debug: Created Phi assignment: let tuple_index%1#5: uint64 = undefined while trying to resolve 'tuple_index%1' in block@5: // for_header_1_L35 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#0 <- block@4, tuple_index%1#5 <- block@5) in block@5: // for_header_1_L35 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#4 <- block@8) in block@8: // bool_true_L37 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#4: uint64 = Phi(tuple_index%1#0 <- block@4, tuple_index%1#5 <- block@5) in block@5: // for_header_1_L35 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#3: uint64 = Phi(tuple_index%1#4 <- block@8) in block@8: // bool_true_L37 debug: Created Phi assignment: let tuple_index%1#6: uint64 = undefined while trying to resolve 'tuple_index%1' in block@9: // bool_false_L37 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#6: uint64 = φ(tuple_index%1#4 <- block@6) in block@6: // for_body_L35 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#6: uint64 = φ(tuple_index%1#4 <- block@6, tuple_index%1#4 <- block@7) in block@7: // and_contd_L37 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#6: uint64 = Phi(tuple_index%1#4 <- block@6) in block@6: // for_body_L35 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#6: uint64 = Phi(tuple_index%1#4 <- block@6, tuple_index%1#4 <- block@7) in block@7: // and_contd_L37 debug: Replacing trivial Phi node: let tuple_index%1#6: uint64 = φ(tuple_index%1#4 <- block@6, tuple_index%1#4 <- block@7) (tuple_index%1#6) with tuple_index%1#4 debug: Deleting Phi assignment: let tuple_index%1#6: uint64 = φ(tuple_index%1#4 <- block@6, tuple_index%1#4 <- block@7) debug: Replaced trivial Phi node: let tuple_index%1#6: uint64 = φ(tuple_index%1#4 <- block@6, tuple_index%1#4 <- block@7) (tuple_index%1#6) with tuple_index%1#4 in current definition for 1 blocks -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#4 <- block@8, tuple_index%1#4 <- block@9) in block@9: // bool_false_L37 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#3: uint64 = Phi(tuple_index%1#4 <- block@8, tuple_index%1#4 <- block@9) in block@9: // bool_false_L37 debug: Replacing trivial Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#4 <- block@8, tuple_index%1#4 <- block@9) (tuple_index%1#3) with tuple_index%1#4 debug: Deleting Phi assignment: let tuple_index%1#3: uint64 = φ(tuple_index%1#4 <- block@8, tuple_index%1#4 <- block@9) debug: Replaced trivial Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#4 <- block@8, tuple_index%1#4 <- block@9) (tuple_index%1#3) with tuple_index%1#4 in current definition for 1 blocks -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#4 <- block@10) in block@10: // bool_merge_L37 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#4 <- block@10, tuple_index%1#4 <- block@11) in block@11: // or_contd_L42 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#2: uint64 = Phi(tuple_index%1#4 <- block@10) in block@10: // bool_merge_L37 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#2: uint64 = Phi(tuple_index%1#4 <- block@10, tuple_index%1#4 <- block@11) in block@11: // or_contd_L42 debug: Replacing trivial Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#4 <- block@10, tuple_index%1#4 <- block@11) (tuple_index%1#2) with tuple_index%1#4 debug: Deleting Phi assignment: let tuple_index%1#2: uint64 = φ(tuple_index%1#4 <- block@10, tuple_index%1#4 <- block@11) debug: Replaced trivial Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#4 <- block@10, tuple_index%1#4 <- block@11) (tuple_index%1#2) with tuple_index%1#4 in current definition for 1 blocks -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#4 <- block@12) in block@12: // bool_true_L42 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#4 <- block@12, tuple_index%1#4 <- block@13) in block@13: // bool_false_L42 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#4 <- block@12) in block@12: // bool_true_L42 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#4 <- block@12, tuple_index%1#4 <- block@13) in block@13: // bool_false_L42 debug: Replacing trivial Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#4 <- block@12, tuple_index%1#4 <- block@13) (tuple_index%1#1) with tuple_index%1#4 debug: Deleting Phi assignment: let tuple_index%1#1: uint64 = φ(tuple_index%1#4 <- block@12, tuple_index%1#4 <- block@13) debug: Replaced trivial Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#4 <- block@12, tuple_index%1#4 <- block@13) (tuple_index%1#1) with tuple_index%1#4 in current definition for 1 blocks debug: Terminated block@15: // for_footer_L35 debug: Sealing block@5: // for_header_1_L35 -debug: Added lhs#2 to Phi node: let lhs#4: uint64 = φ(lhs#2 <- block@15) in block@15: // for_footer_L35 +debug: Added lhs#2 to Phi node: let lhs#4: uint64 = Phi(lhs#2 <- block@15) in block@15: // for_footer_L35 debug: Replacing trivial Phi node: let lhs#4: uint64 = φ(lhs#2 <- block@15) (lhs#4) with lhs#2 debug: Deleting Phi assignment: let lhs#4: uint64 = φ(lhs#2 <- block@15) debug: Replacing trivial Phi node: let lhs#2: uint64 = φ(lhs#3 <- block@4, lhs#2 <- block@5) (lhs#2) with lhs#3 debug: Deleting Phi assignment: let lhs#2: uint64 = φ(lhs#3 <- block@4, lhs#2 <- block@5) debug: Replaced trivial Phi node: let lhs#4: uint64 = φ(lhs#2 <- block@15) (lhs#4) with lhs#2 in current definition for 1 blocks debug: Replaced trivial Phi node: let lhs#2: uint64 = φ(lhs#3 <- block@4, lhs#2 <- block@5) (lhs#2) with lhs#3 in current definition for 11 blocks -debug: Added tuple_index%1#7 to Phi node: let tuple_index%1#5: uint64 = φ(tuple_index%1#7 <- block@15) in block@15: // for_footer_L35 +debug: Added tuple_index%1#7 to Phi node: let tuple_index%1#5: uint64 = Phi(tuple_index%1#7 <- block@15) in block@15: // for_footer_L35 debug: Replacing trivial Phi node: let tuple_index%1#5: uint64 = φ(tuple_index%1#7 <- block@15) (tuple_index%1#5) with tuple_index%1#7 debug: Deleting Phi assignment: let tuple_index%1#5: uint64 = φ(tuple_index%1#7 <- block@15) debug: Replaced trivial Phi node: let tuple_index%1#5: uint64 = φ(tuple_index%1#7 <- block@15) (tuple_index%1#5) with tuple_index%1#7 in current definition for 1 blocks @@ -149,30 +149,30 @@ debug: Created Phi assignment: let tuple_index%0#2: uint64 = undefined while try debug: Created Phi assignment: let tuple_index%0#3: uint64 = undefined while trying to resolve 'tuple_index%0' in block@10: // bool_merge_L37 debug: Created Phi assignment: let tuple_index%0#4: uint64 = undefined while trying to resolve 'tuple_index%0' in block@6: // for_body_L35 debug: Created Phi assignment: let tuple_index%0#5: uint64 = undefined while trying to resolve 'tuple_index%0' in block@3: // for_body_L34 -debug: Added tuple_index%0#0 to Phi node: let tuple_index%0#5: uint64 = φ(tuple_index%0#0 <- block@1) in block@1: // for_header_0_L34 +debug: Added tuple_index%0#0 to Phi node: let tuple_index%0#5: uint64 = Phi(tuple_index%0#0 <- block@1) in block@1: // for_header_0_L34 debug: Looking for 'tuple_index%0' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L34 debug: Created Phi assignment: let tuple_index%0#6: uint64 = undefined while trying to resolve 'tuple_index%0' in block@2: // for_header_1_L34 -debug: Added tuple_index%0#6 to Phi node: let tuple_index%0#5: uint64 = φ(tuple_index%0#0 <- block@1, tuple_index%0#6 <- block@2) in block@2: // for_header_1_L34 -debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@4) in block@4: // for_header_0_L35 -debug: Added tuple_index%0#1 to Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@4, tuple_index%0#1 <- block@5) in block@5: // for_header_1_L35 -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@8) in block@8: // bool_true_L37 +debug: Added tuple_index%0#6 to Phi node: let tuple_index%0#5: uint64 = Phi(tuple_index%0#0 <- block@1, tuple_index%0#6 <- block@2) in block@2: // for_header_1_L34 +debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#4: uint64 = Phi(tuple_index%0#5 <- block@4) in block@4: // for_header_0_L35 +debug: Added tuple_index%0#1 to Phi node: let tuple_index%0#4: uint64 = Phi(tuple_index%0#5 <- block@4, tuple_index%0#1 <- block@5) in block@5: // for_header_1_L35 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#3: uint64 = Phi(tuple_index%0#4 <- block@8) in block@8: // bool_true_L37 debug: Created Phi assignment: let tuple_index%0#7: uint64 = undefined while trying to resolve 'tuple_index%0' in block@9: // bool_false_L37 -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#7: uint64 = φ(tuple_index%0#4 <- block@6) in block@6: // for_body_L35 -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#7: uint64 = φ(tuple_index%0#4 <- block@6, tuple_index%0#4 <- block@7) in block@7: // and_contd_L37 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#7: uint64 = Phi(tuple_index%0#4 <- block@6) in block@6: // for_body_L35 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#7: uint64 = Phi(tuple_index%0#4 <- block@6, tuple_index%0#4 <- block@7) in block@7: // and_contd_L37 debug: Replacing trivial Phi node: let tuple_index%0#7: uint64 = φ(tuple_index%0#4 <- block@6, tuple_index%0#4 <- block@7) (tuple_index%0#7) with tuple_index%0#4 debug: Deleting Phi assignment: let tuple_index%0#7: uint64 = φ(tuple_index%0#4 <- block@6, tuple_index%0#4 <- block@7) debug: Replaced trivial Phi node: let tuple_index%0#7: uint64 = φ(tuple_index%0#4 <- block@6, tuple_index%0#4 <- block@7) (tuple_index%0#7) with tuple_index%0#4 in current definition for 1 blocks -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@8, tuple_index%0#4 <- block@9) in block@9: // bool_false_L37 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#3: uint64 = Phi(tuple_index%0#4 <- block@8, tuple_index%0#4 <- block@9) in block@9: // bool_false_L37 debug: Replacing trivial Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@8, tuple_index%0#4 <- block@9) (tuple_index%0#3) with tuple_index%0#4 debug: Deleting Phi assignment: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@8, tuple_index%0#4 <- block@9) debug: Replaced trivial Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@8, tuple_index%0#4 <- block@9) (tuple_index%0#3) with tuple_index%0#4 in current definition for 1 blocks -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@10) in block@10: // bool_merge_L37 -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@10, tuple_index%0#4 <- block@11) in block@11: // or_contd_L42 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#2: uint64 = Phi(tuple_index%0#4 <- block@10) in block@10: // bool_merge_L37 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#2: uint64 = Phi(tuple_index%0#4 <- block@10, tuple_index%0#4 <- block@11) in block@11: // or_contd_L42 debug: Replacing trivial Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@10, tuple_index%0#4 <- block@11) (tuple_index%0#2) with tuple_index%0#4 debug: Deleting Phi assignment: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@10, tuple_index%0#4 <- block@11) debug: Replaced trivial Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@10, tuple_index%0#4 <- block@11) (tuple_index%0#2) with tuple_index%0#4 in current definition for 1 blocks -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#4 <- block@12) in block@12: // bool_true_L42 -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#4 <- block@12, tuple_index%0#4 <- block@13) in block@13: // bool_false_L42 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#4 <- block@12) in block@12: // bool_true_L42 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#4 <- block@12, tuple_index%0#4 <- block@13) in block@13: // bool_false_L42 debug: Replacing trivial Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#4 <- block@12, tuple_index%0#4 <- block@13) (tuple_index%0#1) with tuple_index%0#4 debug: Deleting Phi assignment: let tuple_index%0#1: uint64 = φ(tuple_index%0#4 <- block@12, tuple_index%0#4 <- block@13) debug: Replacing trivial Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@4, tuple_index%0#4 <- block@5) (tuple_index%0#4) with tuple_index%0#5 @@ -181,7 +181,7 @@ debug: Replaced trivial Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0 debug: Replaced trivial Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@4, tuple_index%0#4 <- block@5) (tuple_index%0#4) with tuple_index%0#5 in current definition for 11 blocks debug: Terminated block@17: // for_footer_L34 debug: Sealing block@2: // for_header_1_L34 -debug: Added tuple_index%0#8 to Phi node: let tuple_index%0#6: uint64 = φ(tuple_index%0#8 <- block@17) in block@17: // for_footer_L34 +debug: Added tuple_index%0#8 to Phi node: let tuple_index%0#6: uint64 = Phi(tuple_index%0#8 <- block@17) in block@17: // for_footer_L34 debug: Replacing trivial Phi node: let tuple_index%0#6: uint64 = φ(tuple_index%0#8 <- block@17) (tuple_index%0#6) with tuple_index%0#8 debug: Deleting Phi assignment: let tuple_index%0#6: uint64 = φ(tuple_index%0#8 <- block@17) debug: Replaced trivial Phi node: let tuple_index%0#6: uint64 = φ(tuple_index%0#8 <- block@17) (tuple_index%0#6) with tuple_index%0#8 in current definition for 1 blocks @@ -195,8 +195,8 @@ debug: Terminated block@1: // ternary_true_L29 debug: Terminated block@2: // ternary_false_L29 debug: Sealing block@3: // ternary_merge_L29 debug: Created Phi assignment: let ternary_result%0#2: bytes = undefined while trying to resolve 'ternary_result%0' in block@3: // ternary_merge_L29 -debug: Added ternary_result%0#0 to Phi node: let ternary_result%0#2: bytes = φ(ternary_result%0#0 <- block@1) in block@1: // ternary_true_L29 -debug: Added ternary_result%0#1 to Phi node: let ternary_result%0#2: bytes = φ(ternary_result%0#0 <- block@1, ternary_result%0#1 <- block@2) in block@2: // ternary_false_L29 +debug: Added ternary_result%0#0 to Phi node: let ternary_result%0#2: bytes = Phi(ternary_result%0#0 <- block@1) in block@1: // ternary_true_L29 +debug: Added ternary_result%0#1 to Phi node: let ternary_result%0#2: bytes = Phi(ternary_result%0#0 <- block@1, ternary_result%0#1 <- block@2) in block@2: // ternary_false_L29 debug: Terminated block@3: // ternary_merge_L29 debug: Sealing block@0: // L49 debug: Terminated block@0: // L49 diff --git a/examples/calculator/puya.log b/examples/calculator/puya.log index 4e37bfebdd..d5e798c9b3 100644 --- a/examples/calculator/puya.log +++ b/examples/calculator/puya.log @@ -70,14 +70,14 @@ debug: Terminated block@1: // if_body_L21 debug: Terminated block@2: // else_body_L21 debug: Sealing block@3: // after_if_else_L21 debug: Created Phi assignment: let action#2: uint64 = undefined while trying to resolve 'action' in block@3: // after_if_else_L21 -debug: Added action#0 to Phi node: let action#2: uint64 = φ(action#0 <- block@1) in block@1: // if_body_L21 -debug: Added action#1 to Phi node: let action#2: uint64 = φ(action#0 <- block@1, action#1 <- block@2) in block@2: // else_body_L21 +debug: Added action#0 to Phi node: let action#2: uint64 = Phi(action#0 <- block@1) in block@1: // if_body_L21 +debug: Added action#1 to Phi node: let action#2: uint64 = Phi(action#0 <- block@1, action#1 <- block@2) in block@2: // else_body_L21 debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@3: // after_if_else_L21 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#0 <- block@1) in block@1: // if_body_L21 -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#0 <- block@1, a#1 <- block@2) in block@2: // else_body_L21 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#0 <- block@1) in block@1: // if_body_L21 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#0 <- block@1, a#1 <- block@2) in block@2: // else_body_L21 debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@3: // after_if_else_L21 -debug: Added b#0 to Phi node: let b#2: uint64 = φ(b#0 <- block@1) in block@1: // if_body_L21 -debug: Added b#1 to Phi node: let b#2: uint64 = φ(b#0 <- block@1, b#1 <- block@2) in block@2: // else_body_L21 +debug: Added b#0 to Phi node: let b#2: uint64 = Phi(b#0 <- block@1) in block@1: // if_body_L21 +debug: Added b#1 to Phi node: let b#2: uint64 = Phi(b#0 <- block@1, b#1 <- block@2) in block@2: // else_body_L21 debug: Terminated block@3: // after_if_else_L21 debug: Sealing block@0: // L85 debug: Terminated block@0: // L85 diff --git a/examples/conditional_execution/puya.log b/examples/conditional_execution/puya.log index 2fa5ce6d6b..d62dcb09ed 100644 --- a/examples/conditional_execution/puya.log +++ b/examples/conditional_execution/puya.log @@ -34,8 +34,8 @@ debug: Terminated block@4: // bool_true_L11 debug: Terminated block@5: // bool_false_L11 debug: Sealing block@6: // bool_merge_L11 debug: Created Phi assignment: let or_result%3#2: uint64 = undefined while trying to resolve 'or_result%3' in block@6: // bool_merge_L11 -debug: Added or_result%3#0 to Phi node: let or_result%3#2: uint64 = φ(or_result%3#0 <- block@4) in block@4: // bool_true_L11 -debug: Added or_result%3#1 to Phi node: let or_result%3#2: uint64 = φ(or_result%3#0 <- block@4, or_result%3#1 <- block@5) in block@5: // bool_false_L11 +debug: Added or_result%3#0 to Phi node: let or_result%3#2: uint64 = Phi(or_result%3#0 <- block@4) in block@4: // bool_true_L11 +debug: Added or_result%3#1 to Phi node: let or_result%3#2: uint64 = Phi(or_result%3#0 <- block@4, or_result%3#1 <- block@5) in block@5: // bool_false_L11 debug: Terminated block@6: // bool_merge_L11 debug: Sealing block@None: // and_contd_L13 debug: Terminated block@7: // and_contd_L13 @@ -45,8 +45,8 @@ debug: Terminated block@8: // bool_true_L13 debug: Terminated block@9: // bool_false_L13 debug: Sealing block@10: // bool_merge_L13 debug: Created Phi assignment: let and_result%8#2: uint64 = undefined while trying to resolve 'and_result%8' in block@10: // bool_merge_L13 -debug: Added and_result%8#0 to Phi node: let and_result%8#2: uint64 = φ(and_result%8#0 <- block@8) in block@8: // bool_true_L13 -debug: Added and_result%8#1 to Phi node: let and_result%8#2: uint64 = φ(and_result%8#0 <- block@8, and_result%8#1 <- block@9) in block@9: // bool_false_L13 +debug: Added and_result%8#0 to Phi node: let and_result%8#2: uint64 = Phi(and_result%8#0 <- block@8) in block@8: // bool_true_L13 +debug: Added and_result%8#1 to Phi node: let and_result%8#2: uint64 = Phi(and_result%8#0 <- block@8, and_result%8#1 <- block@9) in block@9: // bool_false_L13 debug: Terminated block@10: // bool_merge_L13 debug: Sealing block@None: // or_contd_L17 debug: Terminated block@11: // or_contd_L17 @@ -56,8 +56,8 @@ debug: Terminated block@12: // bool_true_L17 debug: Terminated block@13: // bool_false_L17 debug: Sealing block@14: // bool_merge_L17 debug: Created Phi assignment: let or_result%11#2: uint64 = undefined while trying to resolve 'or_result%11' in block@14: // bool_merge_L17 -debug: Added or_result%11#0 to Phi node: let or_result%11#2: uint64 = φ(or_result%11#0 <- block@12) in block@12: // bool_true_L17 -debug: Added or_result%11#1 to Phi node: let or_result%11#2: uint64 = φ(or_result%11#0 <- block@12, or_result%11#1 <- block@13) in block@13: // bool_false_L17 +debug: Added or_result%11#0 to Phi node: let or_result%11#2: uint64 = Phi(or_result%11#0 <- block@12) in block@12: // bool_true_L17 +debug: Added or_result%11#1 to Phi node: let or_result%11#2: uint64 = Phi(or_result%11#0 <- block@12, or_result%11#1 <- block@13) in block@13: // bool_false_L17 debug: Terminated block@14: // bool_merge_L17 debug: Sealing block@None: // and_contd_L19 debug: Terminated block@15: // and_contd_L19 @@ -67,8 +67,8 @@ debug: Terminated block@16: // bool_true_L19 debug: Terminated block@17: // bool_false_L19 debug: Sealing block@18: // bool_merge_L19 debug: Created Phi assignment: let and_result%16#2: uint64 = undefined while trying to resolve 'and_result%16' in block@18: // bool_merge_L19 -debug: Added and_result%16#0 to Phi node: let and_result%16#2: uint64 = φ(and_result%16#0 <- block@16) in block@16: // bool_true_L19 -debug: Added and_result%16#1 to Phi node: let and_result%16#2: uint64 = φ(and_result%16#0 <- block@16, and_result%16#1 <- block@17) in block@17: // bool_false_L19 +debug: Added and_result%16#0 to Phi node: let and_result%16#2: uint64 = Phi(and_result%16#0 <- block@16) in block@16: // bool_true_L19 +debug: Added and_result%16#1 to Phi node: let and_result%16#2: uint64 = Phi(and_result%16#0 <- block@16, and_result%16#1 <- block@17) in block@17: // bool_false_L19 debug: Terminated block@18: // bool_merge_L19 debug: Sealing block@None: // and_contd_L23 debug: Terminated block@19: // and_contd_L23 @@ -78,8 +78,8 @@ debug: Terminated block@20: // bool_true_L23 debug: Terminated block@21: // bool_false_L23 debug: Sealing block@22: // bool_merge_L23 debug: Created Phi assignment: let and_result%19#2: uint64 = undefined while trying to resolve 'and_result%19' in block@22: // bool_merge_L23 -debug: Added and_result%19#0 to Phi node: let and_result%19#2: uint64 = φ(and_result%19#0 <- block@20) in block@20: // bool_true_L23 -debug: Added and_result%19#1 to Phi node: let and_result%19#2: uint64 = φ(and_result%19#0 <- block@20, and_result%19#1 <- block@21) in block@21: // bool_false_L23 +debug: Added and_result%19#0 to Phi node: let and_result%19#2: uint64 = Phi(and_result%19#0 <- block@20) in block@20: // bool_true_L23 +debug: Added and_result%19#1 to Phi node: let and_result%19#2: uint64 = Phi(and_result%19#0 <- block@20, and_result%19#1 <- block@21) in block@21: // bool_false_L23 debug: Terminated block@22: // bool_merge_L23 debug: Sealing block@None: // and_contd_L25 debug: Terminated block@23: // and_contd_L25 @@ -89,8 +89,8 @@ debug: Terminated block@24: // bool_true_L25 debug: Terminated block@25: // bool_false_L25 debug: Sealing block@26: // bool_merge_L25 debug: Created Phi assignment: let and_result%24#2: uint64 = undefined while trying to resolve 'and_result%24' in block@26: // bool_merge_L25 -debug: Added and_result%24#0 to Phi node: let and_result%24#2: uint64 = φ(and_result%24#0 <- block@24) in block@24: // bool_true_L25 -debug: Added and_result%24#1 to Phi node: let and_result%24#2: uint64 = φ(and_result%24#0 <- block@24, and_result%24#1 <- block@25) in block@25: // bool_false_L25 +debug: Added and_result%24#0 to Phi node: let and_result%24#2: uint64 = Phi(and_result%24#0 <- block@24) in block@24: // bool_true_L25 +debug: Added and_result%24#1 to Phi node: let and_result%24#2: uint64 = Phi(and_result%24#0 <- block@24, and_result%24#1 <- block@25) in block@25: // bool_false_L25 debug: Terminated block@26: // bool_merge_L25 debug: Sealing block@None: // and_contd_L29 debug: Terminated block@27: // and_contd_L29 @@ -100,8 +100,8 @@ debug: Terminated block@28: // bool_true_L29 debug: Terminated block@29: // bool_false_L29 debug: Sealing block@30: // bool_merge_L29 debug: Created Phi assignment: let and_result%27#2: uint64 = undefined while trying to resolve 'and_result%27' in block@30: // bool_merge_L29 -debug: Added and_result%27#0 to Phi node: let and_result%27#2: uint64 = φ(and_result%27#0 <- block@28) in block@28: // bool_true_L29 -debug: Added and_result%27#1 to Phi node: let and_result%27#2: uint64 = φ(and_result%27#0 <- block@28, and_result%27#1 <- block@29) in block@29: // bool_false_L29 +debug: Added and_result%27#0 to Phi node: let and_result%27#2: uint64 = Phi(and_result%27#0 <- block@28) in block@28: // bool_true_L29 +debug: Added and_result%27#1 to Phi node: let and_result%27#2: uint64 = Phi(and_result%27#0 <- block@28, and_result%27#1 <- block@29) in block@29: // bool_false_L29 debug: Terminated block@30: // bool_merge_L29 debug: Sealing block@None: // and_contd_L31 debug: Terminated block@31: // and_contd_L31 @@ -111,8 +111,8 @@ debug: Terminated block@32: // bool_true_L31 debug: Terminated block@33: // bool_false_L31 debug: Sealing block@34: // bool_merge_L31 debug: Created Phi assignment: let and_result%32#2: uint64 = undefined while trying to resolve 'and_result%32' in block@34: // bool_merge_L31 -debug: Added and_result%32#0 to Phi node: let and_result%32#2: uint64 = φ(and_result%32#0 <- block@32) in block@32: // bool_true_L31 -debug: Added and_result%32#1 to Phi node: let and_result%32#2: uint64 = φ(and_result%32#0 <- block@32, and_result%32#1 <- block@33) in block@33: // bool_false_L31 +debug: Added and_result%32#0 to Phi node: let and_result%32#2: uint64 = Phi(and_result%32#0 <- block@32) in block@32: // bool_true_L31 +debug: Added and_result%32#1 to Phi node: let and_result%32#2: uint64 = Phi(and_result%32#0 <- block@32, and_result%32#1 <- block@33) in block@33: // bool_false_L31 debug: Terminated block@34: // bool_merge_L31 debug: Sealing block@None: // and_contd_L37 debug: Terminated block@35: // and_contd_L37 @@ -122,8 +122,8 @@ debug: Terminated block@36: // bool_true_L37 debug: Terminated block@37: // bool_false_L37 debug: Sealing block@38: // bool_merge_L37 debug: Created Phi assignment: let and_result%39#2: uint64 = undefined while trying to resolve 'and_result%39' in block@38: // bool_merge_L37 -debug: Added and_result%39#0 to Phi node: let and_result%39#2: uint64 = φ(and_result%39#0 <- block@36) in block@36: // bool_true_L37 -debug: Added and_result%39#1 to Phi node: let and_result%39#2: uint64 = φ(and_result%39#0 <- block@36, and_result%39#1 <- block@37) in block@37: // bool_false_L37 +debug: Added and_result%39#0 to Phi node: let and_result%39#2: uint64 = Phi(and_result%39#0 <- block@36) in block@36: // bool_true_L37 +debug: Added and_result%39#1 to Phi node: let and_result%39#2: uint64 = Phi(and_result%39#0 <- block@36, and_result%39#1 <- block@37) in block@37: // bool_false_L37 debug: Terminated block@38: // bool_merge_L37 debug: Sealing block@None: // ternary_true_L41 debug: Sealing block@None: // ternary_false_L41 @@ -131,8 +131,8 @@ debug: Terminated block@39: // ternary_true_L41 debug: Terminated block@40: // ternary_false_L41 debug: Sealing block@41: // ternary_merge_L41 debug: Created Phi assignment: let ternary_result%41#2: uint64 = undefined while trying to resolve 'ternary_result%41' in block@41: // ternary_merge_L41 -debug: Added ternary_result%41#0 to Phi node: let ternary_result%41#2: uint64 = φ(ternary_result%41#0 <- block@39) in block@39: // ternary_true_L41 -debug: Added ternary_result%41#1 to Phi node: let ternary_result%41#2: uint64 = φ(ternary_result%41#0 <- block@39, ternary_result%41#1 <- block@40) in block@40: // ternary_false_L41 +debug: Added ternary_result%41#0 to Phi node: let ternary_result%41#2: uint64 = Phi(ternary_result%41#0 <- block@39) in block@39: // ternary_true_L41 +debug: Added ternary_result%41#1 to Phi node: let ternary_result%41#2: uint64 = Phi(ternary_result%41#0 <- block@39, ternary_result%41#1 <- block@40) in block@40: // ternary_false_L41 debug: Terminated block@41: // ternary_merge_L41 debug: Sealing block@None: // and_contd_L43 debug: Terminated block@42: // and_contd_L43 @@ -142,8 +142,8 @@ debug: Terminated block@43: // bool_true_L43 debug: Terminated block@44: // bool_false_L43 debug: Sealing block@45: // bool_merge_L43 debug: Created Phi assignment: let and_result%46#2: uint64 = undefined while trying to resolve 'and_result%46' in block@45: // bool_merge_L43 -debug: Added and_result%46#0 to Phi node: let and_result%46#2: uint64 = φ(and_result%46#0 <- block@43) in block@43: // bool_true_L43 -debug: Added and_result%46#1 to Phi node: let and_result%46#2: uint64 = φ(and_result%46#0 <- block@43, and_result%46#1 <- block@44) in block@44: // bool_false_L43 +debug: Added and_result%46#0 to Phi node: let and_result%46#2: uint64 = Phi(and_result%46#0 <- block@43) in block@43: // bool_true_L43 +debug: Added and_result%46#1 to Phi node: let and_result%46#2: uint64 = Phi(and_result%46#0 <- block@43, and_result%46#1 <- block@44) in block@44: // bool_false_L43 debug: Terminated block@45: // bool_merge_L43 debug: Sealing block@None: // ternary_true_L47 debug: Sealing block@None: // ternary_false_L47 @@ -151,8 +151,8 @@ debug: Terminated block@46: // ternary_true_L47 debug: Terminated block@47: // ternary_false_L47 debug: Sealing block@48: // ternary_merge_L47 debug: Created Phi assignment: let ternary_result%48#2: uint64 = undefined while trying to resolve 'ternary_result%48' in block@48: // ternary_merge_L47 -debug: Added ternary_result%48#0 to Phi node: let ternary_result%48#2: uint64 = φ(ternary_result%48#0 <- block@46) in block@46: // ternary_true_L47 -debug: Added ternary_result%48#1 to Phi node: let ternary_result%48#2: uint64 = φ(ternary_result%48#0 <- block@46, ternary_result%48#1 <- block@47) in block@47: // ternary_false_L47 +debug: Added ternary_result%48#0 to Phi node: let ternary_result%48#2: uint64 = Phi(ternary_result%48#0 <- block@46) in block@46: // ternary_true_L47 +debug: Added ternary_result%48#1 to Phi node: let ternary_result%48#2: uint64 = Phi(ternary_result%48#0 <- block@46, ternary_result%48#1 <- block@47) in block@47: // ternary_false_L47 debug: Terminated block@48: // ternary_merge_L47 debug: Sealing block@None: // and_contd_L49 debug: Terminated block@49: // and_contd_L49 @@ -162,8 +162,8 @@ debug: Terminated block@50: // bool_true_L49 debug: Terminated block@51: // bool_false_L49 debug: Sealing block@52: // bool_merge_L49 debug: Created Phi assignment: let and_result%53#2: uint64 = undefined while trying to resolve 'and_result%53' in block@52: // bool_merge_L49 -debug: Added and_result%53#0 to Phi node: let and_result%53#2: uint64 = φ(and_result%53#0 <- block@50) in block@50: // bool_true_L49 -debug: Added and_result%53#1 to Phi node: let and_result%53#2: uint64 = φ(and_result%53#0 <- block@50, and_result%53#1 <- block@51) in block@51: // bool_false_L49 +debug: Added and_result%53#0 to Phi node: let and_result%53#2: uint64 = Phi(and_result%53#0 <- block@50) in block@50: // bool_true_L49 +debug: Added and_result%53#1 to Phi node: let and_result%53#2: uint64 = Phi(and_result%53#0 <- block@50, and_result%53#1 <- block@51) in block@51: // bool_false_L49 debug: Terminated block@52: // bool_merge_L49 debug: Sealing block@0: // L54 debug: Terminated block@0: // L54 diff --git a/examples/conditional_expressions/puya.log b/examples/conditional_expressions/puya.log index 4033c94e59..810f96fc49 100644 --- a/examples/conditional_expressions/puya.log +++ b/examples/conditional_expressions/puya.log @@ -15,11 +15,11 @@ debug: Terminated block@1: // ternary_true_L11 debug: Terminated block@2: // ternary_false_L11 debug: Sealing block@3: // ternary_merge_L11 debug: Created Phi assignment: let ternary_result%0#2: uint64 = undefined while trying to resolve 'ternary_result%0' in block@3: // ternary_merge_L11 -debug: Added ternary_result%0#0 to Phi node: let ternary_result%0#2: uint64 = φ(ternary_result%0#0 <- block@1) in block@1: // ternary_true_L11 -debug: Added ternary_result%0#1 to Phi node: let ternary_result%0#2: uint64 = φ(ternary_result%0#0 <- block@1, ternary_result%0#1 <- block@2) in block@2: // ternary_false_L11 +debug: Added ternary_result%0#0 to Phi node: let ternary_result%0#2: uint64 = Phi(ternary_result%0#0 <- block@1) in block@1: // ternary_true_L11 +debug: Added ternary_result%0#1 to Phi node: let ternary_result%0#2: uint64 = Phi(ternary_result%0#0 <- block@1, ternary_result%0#1 <- block@2) in block@2: // ternary_false_L11 debug: Created Phi assignment: let b#1: uint64 = undefined while trying to resolve 'b' in block@3: // ternary_merge_L11 -debug: Added b#0 to Phi node: let b#1: uint64 = φ(b#0 <- block@1) in block@1: // ternary_true_L11 -debug: Added b#0 to Phi node: let b#1: uint64 = φ(b#0 <- block@1, b#0 <- block@2) in block@2: // ternary_false_L11 +debug: Added b#0 to Phi node: let b#1: uint64 = Phi(b#0 <- block@1) in block@1: // ternary_true_L11 +debug: Added b#0 to Phi node: let b#1: uint64 = Phi(b#0 <- block@1, b#0 <- block@2) in block@2: // ternary_false_L11 debug: Replacing trivial Phi node: let b#1: uint64 = φ(b#0 <- block@1, b#0 <- block@2) (b#1) with b#0 debug: Deleting Phi assignment: let b#1: uint64 = φ(b#0 <- block@1, b#0 <- block@2) debug: Replaced trivial Phi node: let b#1: uint64 = φ(b#0 <- block@1, b#0 <- block@2) (b#1) with b#0 in current definition for 1 blocks @@ -28,16 +28,16 @@ debug: Sealing block@None: // ternary_true_L12 debug: Sealing block@None: // ternary_false_L12 debug: Terminated block@4: // ternary_true_L12 debug: Created Phi assignment: let a#1: uint64 = undefined while trying to resolve 'a' in block@3: // ternary_merge_L11 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@1) in block@1: // ternary_true_L11 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@1, a#0 <- block@2) in block@2: // ternary_false_L11 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@1) in block@1: // ternary_true_L11 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@1, a#0 <- block@2) in block@2: // ternary_false_L11 debug: Replacing trivial Phi node: let a#1: uint64 = φ(a#0 <- block@1, a#0 <- block@2) (a#1) with a#0 debug: Deleting Phi assignment: let a#1: uint64 = φ(a#0 <- block@1, a#0 <- block@2) debug: Replaced trivial Phi node: let a#1: uint64 = φ(a#0 <- block@1, a#0 <- block@2) (a#1) with a#0 in current definition for 1 blocks debug: Terminated block@5: // ternary_false_L12 debug: Sealing block@6: // ternary_merge_L12 debug: Created Phi assignment: let ternary_result%1#2: uint64 = undefined while trying to resolve 'ternary_result%1' in block@6: // ternary_merge_L12 -debug: Added ternary_result%1#0 to Phi node: let ternary_result%1#2: uint64 = φ(ternary_result%1#0 <- block@4) in block@4: // ternary_true_L12 -debug: Added ternary_result%1#1 to Phi node: let ternary_result%1#2: uint64 = φ(ternary_result%1#0 <- block@4, ternary_result%1#1 <- block@5) in block@5: // ternary_false_L12 +debug: Added ternary_result%1#0 to Phi node: let ternary_result%1#2: uint64 = Phi(ternary_result%1#0 <- block@4) in block@4: // ternary_true_L12 +debug: Added ternary_result%1#1 to Phi node: let ternary_result%1#2: uint64 = Phi(ternary_result%1#0 <- block@4, ternary_result%1#1 <- block@5) in block@5: // ternary_false_L12 debug: Terminated block@6: // ternary_merge_L12 debug: Sealing block@None: // ternary_true_L14 debug: Sealing block@None: // ternary_false_L14 @@ -45,8 +45,8 @@ debug: Terminated block@7: // ternary_true_L14 debug: Terminated block@8: // ternary_false_L14 debug: Sealing block@9: // ternary_merge_L14 debug: Created Phi assignment: let ternary_result%3#2: uint64 = undefined while trying to resolve 'ternary_result%3' in block@9: // ternary_merge_L14 -debug: Added ternary_result%3#0 to Phi node: let ternary_result%3#2: uint64 = φ(ternary_result%3#0 <- block@7) in block@7: // ternary_true_L14 -debug: Added ternary_result%3#1 to Phi node: let ternary_result%3#2: uint64 = φ(ternary_result%3#0 <- block@7, ternary_result%3#1 <- block@8) in block@8: // ternary_false_L14 +debug: Added ternary_result%3#0 to Phi node: let ternary_result%3#2: uint64 = Phi(ternary_result%3#0 <- block@7) in block@7: // ternary_true_L14 +debug: Added ternary_result%3#1 to Phi node: let ternary_result%3#2: uint64 = Phi(ternary_result%3#0 <- block@7, ternary_result%3#1 <- block@8) in block@8: // ternary_false_L14 debug: Terminated block@9: // ternary_merge_L14 debug: Sealing block@None: // ternary_true_L15 debug: Sealing block@None: // ternary_false_L15 @@ -54,8 +54,8 @@ debug: Terminated block@10: // ternary_true_L15 debug: Terminated block@11: // ternary_false_L15 debug: Sealing block@12: // ternary_merge_L15 debug: Created Phi assignment: let ternary_result%5#2: uint64 = undefined while trying to resolve 'ternary_result%5' in block@12: // ternary_merge_L15 -debug: Added ternary_result%5#0 to Phi node: let ternary_result%5#2: uint64 = φ(ternary_result%5#0 <- block@10) in block@10: // ternary_true_L15 -debug: Added ternary_result%5#1 to Phi node: let ternary_result%5#2: uint64 = φ(ternary_result%5#0 <- block@10, ternary_result%5#1 <- block@11) in block@11: // ternary_false_L15 +debug: Added ternary_result%5#0 to Phi node: let ternary_result%5#2: uint64 = Phi(ternary_result%5#0 <- block@10) in block@10: // ternary_true_L15 +debug: Added ternary_result%5#1 to Phi node: let ternary_result%5#2: uint64 = Phi(ternary_result%5#0 <- block@10, ternary_result%5#1 <- block@11) in block@11: // ternary_false_L15 debug: Terminated block@12: // ternary_merge_L15 debug: Sealing block@None: // ternary_true_L17 debug: Sealing block@None: // ternary_false_L17 @@ -63,8 +63,8 @@ debug: Terminated block@13: // ternary_true_L17 debug: Terminated block@14: // ternary_false_L17 debug: Sealing block@15: // ternary_merge_L17 debug: Created Phi assignment: let ternary_result%7#2: uint64 = undefined while trying to resolve 'ternary_result%7' in block@15: // ternary_merge_L17 -debug: Added ternary_result%7#0 to Phi node: let ternary_result%7#2: uint64 = φ(ternary_result%7#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added ternary_result%7#1 to Phi node: let ternary_result%7#2: uint64 = φ(ternary_result%7#0 <- block@13, ternary_result%7#1 <- block@14) in block@14: // ternary_false_L17 +debug: Added ternary_result%7#0 to Phi node: let ternary_result%7#2: uint64 = Phi(ternary_result%7#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added ternary_result%7#1 to Phi node: let ternary_result%7#2: uint64 = Phi(ternary_result%7#0 <- block@13, ternary_result%7#1 <- block@14) in block@14: // ternary_false_L17 debug: Terminated block@15: // ternary_merge_L17 debug: Sealing block@None: // ternary_true_L18 debug: Sealing block@None: // ternary_false_L18 @@ -72,35 +72,35 @@ debug: Terminated block@16: // ternary_true_L18 debug: Terminated block@17: // ternary_false_L18 debug: Sealing block@18: // ternary_merge_L18 debug: Created Phi assignment: let ternary_result%9#2: uint64 = undefined while trying to resolve 'ternary_result%9' in block@18: // ternary_merge_L18 -debug: Added ternary_result%9#0 to Phi node: let ternary_result%9#2: uint64 = φ(ternary_result%9#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added ternary_result%9#1 to Phi node: let ternary_result%9#2: uint64 = φ(ternary_result%9#0 <- block@16, ternary_result%9#1 <- block@17) in block@17: // ternary_false_L18 +debug: Added ternary_result%9#0 to Phi node: let ternary_result%9#2: uint64 = Phi(ternary_result%9#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added ternary_result%9#1 to Phi node: let ternary_result%9#2: uint64 = Phi(ternary_result%9#0 <- block@16, ternary_result%9#1 <- block@17) in block@17: // ternary_false_L18 debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@18: // ternary_merge_L18 debug: Created Phi assignment: let b#3: uint64 = undefined while trying to resolve 'b' in block@15: // ternary_merge_L17 debug: Created Phi assignment: let b#4: uint64 = undefined while trying to resolve 'b' in block@12: // ternary_merge_L15 debug: Created Phi assignment: let b#5: uint64 = undefined while trying to resolve 'b' in block@9: // ternary_merge_L14 debug: Created Phi assignment: let b#6: uint64 = undefined while trying to resolve 'b' in block@6: // ternary_merge_L12 -debug: Added b#0 to Phi node: let b#6: uint64 = φ(b#0 <- block@4) in block@4: // ternary_true_L12 -debug: Added b#0 to Phi node: let b#6: uint64 = φ(b#0 <- block@4, b#0 <- block@5) in block@5: // ternary_false_L12 +debug: Added b#0 to Phi node: let b#6: uint64 = Phi(b#0 <- block@4) in block@4: // ternary_true_L12 +debug: Added b#0 to Phi node: let b#6: uint64 = Phi(b#0 <- block@4, b#0 <- block@5) in block@5: // ternary_false_L12 debug: Replacing trivial Phi node: let b#6: uint64 = φ(b#0 <- block@4, b#0 <- block@5) (b#6) with b#0 debug: Deleting Phi assignment: let b#6: uint64 = φ(b#0 <- block@4, b#0 <- block@5) debug: Replaced trivial Phi node: let b#6: uint64 = φ(b#0 <- block@4, b#0 <- block@5) (b#6) with b#0 in current definition for 1 blocks -debug: Added b#0 to Phi node: let b#5: uint64 = φ(b#0 <- block@7) in block@7: // ternary_true_L14 -debug: Added b#0 to Phi node: let b#5: uint64 = φ(b#0 <- block@7, b#0 <- block@8) in block@8: // ternary_false_L14 +debug: Added b#0 to Phi node: let b#5: uint64 = Phi(b#0 <- block@7) in block@7: // ternary_true_L14 +debug: Added b#0 to Phi node: let b#5: uint64 = Phi(b#0 <- block@7, b#0 <- block@8) in block@8: // ternary_false_L14 debug: Replacing trivial Phi node: let b#5: uint64 = φ(b#0 <- block@7, b#0 <- block@8) (b#5) with b#0 debug: Deleting Phi assignment: let b#5: uint64 = φ(b#0 <- block@7, b#0 <- block@8) debug: Replaced trivial Phi node: let b#5: uint64 = φ(b#0 <- block@7, b#0 <- block@8) (b#5) with b#0 in current definition for 1 blocks -debug: Added b#0 to Phi node: let b#4: uint64 = φ(b#0 <- block@10) in block@10: // ternary_true_L15 -debug: Added b#0 to Phi node: let b#4: uint64 = φ(b#0 <- block@10, b#0 <- block@11) in block@11: // ternary_false_L15 +debug: Added b#0 to Phi node: let b#4: uint64 = Phi(b#0 <- block@10) in block@10: // ternary_true_L15 +debug: Added b#0 to Phi node: let b#4: uint64 = Phi(b#0 <- block@10, b#0 <- block@11) in block@11: // ternary_false_L15 debug: Replacing trivial Phi node: let b#4: uint64 = φ(b#0 <- block@10, b#0 <- block@11) (b#4) with b#0 debug: Deleting Phi assignment: let b#4: uint64 = φ(b#0 <- block@10, b#0 <- block@11) debug: Replaced trivial Phi node: let b#4: uint64 = φ(b#0 <- block@10, b#0 <- block@11) (b#4) with b#0 in current definition for 1 blocks -debug: Added b#0 to Phi node: let b#3: uint64 = φ(b#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added b#0 to Phi node: let b#3: uint64 = φ(b#0 <- block@13, b#0 <- block@14) in block@14: // ternary_false_L17 +debug: Added b#0 to Phi node: let b#3: uint64 = Phi(b#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added b#0 to Phi node: let b#3: uint64 = Phi(b#0 <- block@13, b#0 <- block@14) in block@14: // ternary_false_L17 debug: Replacing trivial Phi node: let b#3: uint64 = φ(b#0 <- block@13, b#0 <- block@14) (b#3) with b#0 debug: Deleting Phi assignment: let b#3: uint64 = φ(b#0 <- block@13, b#0 <- block@14) debug: Replaced trivial Phi node: let b#3: uint64 = φ(b#0 <- block@13, b#0 <- block@14) (b#3) with b#0 in current definition for 1 blocks -debug: Added b#0 to Phi node: let b#2: uint64 = φ(b#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added b#0 to Phi node: let b#2: uint64 = φ(b#0 <- block@16, b#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added b#0 to Phi node: let b#2: uint64 = Phi(b#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added b#0 to Phi node: let b#2: uint64 = Phi(b#0 <- block@16, b#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let b#2: uint64 = φ(b#0 <- block@16, b#0 <- block@17) (b#2) with b#0 debug: Deleting Phi assignment: let b#2: uint64 = φ(b#0 <- block@16, b#0 <- block@17) debug: Replaced trivial Phi node: let b#2: uint64 = φ(b#0 <- block@16, b#0 <- block@17) (b#2) with b#0 in current definition for 1 blocks @@ -109,28 +109,28 @@ debug: Created Phi assignment: let c#2: uint64 = undefined while trying to resol debug: Created Phi assignment: let c#3: uint64 = undefined while trying to resolve 'c' in block@12: // ternary_merge_L15 debug: Created Phi assignment: let c#4: uint64 = undefined while trying to resolve 'c' in block@9: // ternary_merge_L14 debug: Created Phi assignment: let c#5: uint64 = undefined while trying to resolve 'c' in block@6: // ternary_merge_L12 -debug: Added c#0 to Phi node: let c#5: uint64 = φ(c#0 <- block@4) in block@4: // ternary_true_L12 -debug: Added c#0 to Phi node: let c#5: uint64 = φ(c#0 <- block@4, c#0 <- block@5) in block@5: // ternary_false_L12 +debug: Added c#0 to Phi node: let c#5: uint64 = Phi(c#0 <- block@4) in block@4: // ternary_true_L12 +debug: Added c#0 to Phi node: let c#5: uint64 = Phi(c#0 <- block@4, c#0 <- block@5) in block@5: // ternary_false_L12 debug: Replacing trivial Phi node: let c#5: uint64 = φ(c#0 <- block@4, c#0 <- block@5) (c#5) with c#0 debug: Deleting Phi assignment: let c#5: uint64 = φ(c#0 <- block@4, c#0 <- block@5) debug: Replaced trivial Phi node: let c#5: uint64 = φ(c#0 <- block@4, c#0 <- block@5) (c#5) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#4: uint64 = φ(c#0 <- block@7) in block@7: // ternary_true_L14 -debug: Added c#0 to Phi node: let c#4: uint64 = φ(c#0 <- block@7, c#0 <- block@8) in block@8: // ternary_false_L14 +debug: Added c#0 to Phi node: let c#4: uint64 = Phi(c#0 <- block@7) in block@7: // ternary_true_L14 +debug: Added c#0 to Phi node: let c#4: uint64 = Phi(c#0 <- block@7, c#0 <- block@8) in block@8: // ternary_false_L14 debug: Replacing trivial Phi node: let c#4: uint64 = φ(c#0 <- block@7, c#0 <- block@8) (c#4) with c#0 debug: Deleting Phi assignment: let c#4: uint64 = φ(c#0 <- block@7, c#0 <- block@8) debug: Replaced trivial Phi node: let c#4: uint64 = φ(c#0 <- block@7, c#0 <- block@8) (c#4) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#3: uint64 = φ(c#0 <- block@10) in block@10: // ternary_true_L15 -debug: Added c#0 to Phi node: let c#3: uint64 = φ(c#0 <- block@10, c#0 <- block@11) in block@11: // ternary_false_L15 +debug: Added c#0 to Phi node: let c#3: uint64 = Phi(c#0 <- block@10) in block@10: // ternary_true_L15 +debug: Added c#0 to Phi node: let c#3: uint64 = Phi(c#0 <- block@10, c#0 <- block@11) in block@11: // ternary_false_L15 debug: Replacing trivial Phi node: let c#3: uint64 = φ(c#0 <- block@10, c#0 <- block@11) (c#3) with c#0 debug: Deleting Phi assignment: let c#3: uint64 = φ(c#0 <- block@10, c#0 <- block@11) debug: Replaced trivial Phi node: let c#3: uint64 = φ(c#0 <- block@10, c#0 <- block@11) (c#3) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#2: uint64 = φ(c#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added c#0 to Phi node: let c#2: uint64 = φ(c#0 <- block@13, c#0 <- block@14) in block@14: // ternary_false_L17 +debug: Added c#0 to Phi node: let c#2: uint64 = Phi(c#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added c#0 to Phi node: let c#2: uint64 = Phi(c#0 <- block@13, c#0 <- block@14) in block@14: // ternary_false_L17 debug: Replacing trivial Phi node: let c#2: uint64 = φ(c#0 <- block@13, c#0 <- block@14) (c#2) with c#0 debug: Deleting Phi assignment: let c#2: uint64 = φ(c#0 <- block@13, c#0 <- block@14) debug: Replaced trivial Phi node: let c#2: uint64 = φ(c#0 <- block@13, c#0 <- block@14) (c#2) with c#0 in current definition for 1 blocks -debug: Added c#0 to Phi node: let c#1: uint64 = φ(c#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added c#0 to Phi node: let c#1: uint64 = φ(c#0 <- block@16, c#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added c#0 to Phi node: let c#1: uint64 = Phi(c#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added c#0 to Phi node: let c#1: uint64 = Phi(c#0 <- block@16, c#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let c#1: uint64 = φ(c#0 <- block@16, c#0 <- block@17) (c#1) with c#0 debug: Deleting Phi assignment: let c#1: uint64 = φ(c#0 <- block@16, c#0 <- block@17) debug: Replaced trivial Phi node: let c#1: uint64 = φ(c#0 <- block@16, c#0 <- block@17) (c#1) with c#0 in current definition for 1 blocks @@ -142,28 +142,28 @@ debug: Created Phi assignment: let a#3: uint64 = undefined while trying to resol debug: Created Phi assignment: let a#4: uint64 = undefined while trying to resolve 'a' in block@12: // ternary_merge_L15 debug: Created Phi assignment: let a#5: uint64 = undefined while trying to resolve 'a' in block@9: // ternary_merge_L14 debug: Created Phi assignment: let a#6: uint64 = undefined while trying to resolve 'a' in block@6: // ternary_merge_L12 -debug: Added a#0 to Phi node: let a#6: uint64 = φ(a#0 <- block@4) in block@4: // ternary_true_L12 -debug: Added a#0 to Phi node: let a#6: uint64 = φ(a#0 <- block@4, a#0 <- block@5) in block@5: // ternary_false_L12 +debug: Added a#0 to Phi node: let a#6: uint64 = Phi(a#0 <- block@4) in block@4: // ternary_true_L12 +debug: Added a#0 to Phi node: let a#6: uint64 = Phi(a#0 <- block@4, a#0 <- block@5) in block@5: // ternary_false_L12 debug: Replacing trivial Phi node: let a#6: uint64 = φ(a#0 <- block@4, a#0 <- block@5) (a#6) with a#0 debug: Deleting Phi assignment: let a#6: uint64 = φ(a#0 <- block@4, a#0 <- block@5) debug: Replaced trivial Phi node: let a#6: uint64 = φ(a#0 <- block@4, a#0 <- block@5) (a#6) with a#0 in current definition for 1 blocks -debug: Added a#0 to Phi node: let a#5: uint64 = φ(a#0 <- block@7) in block@7: // ternary_true_L14 -debug: Added a#0 to Phi node: let a#5: uint64 = φ(a#0 <- block@7, a#0 <- block@8) in block@8: // ternary_false_L14 +debug: Added a#0 to Phi node: let a#5: uint64 = Phi(a#0 <- block@7) in block@7: // ternary_true_L14 +debug: Added a#0 to Phi node: let a#5: uint64 = Phi(a#0 <- block@7, a#0 <- block@8) in block@8: // ternary_false_L14 debug: Replacing trivial Phi node: let a#5: uint64 = φ(a#0 <- block@7, a#0 <- block@8) (a#5) with a#0 debug: Deleting Phi assignment: let a#5: uint64 = φ(a#0 <- block@7, a#0 <- block@8) debug: Replaced trivial Phi node: let a#5: uint64 = φ(a#0 <- block@7, a#0 <- block@8) (a#5) with a#0 in current definition for 1 blocks -debug: Added a#0 to Phi node: let a#4: uint64 = φ(a#0 <- block@10) in block@10: // ternary_true_L15 -debug: Added a#0 to Phi node: let a#4: uint64 = φ(a#0 <- block@10, a#0 <- block@11) in block@11: // ternary_false_L15 +debug: Added a#0 to Phi node: let a#4: uint64 = Phi(a#0 <- block@10) in block@10: // ternary_true_L15 +debug: Added a#0 to Phi node: let a#4: uint64 = Phi(a#0 <- block@10, a#0 <- block@11) in block@11: // ternary_false_L15 debug: Replacing trivial Phi node: let a#4: uint64 = φ(a#0 <- block@10, a#0 <- block@11) (a#4) with a#0 debug: Deleting Phi assignment: let a#4: uint64 = φ(a#0 <- block@10, a#0 <- block@11) debug: Replaced trivial Phi node: let a#4: uint64 = φ(a#0 <- block@10, a#0 <- block@11) (a#4) with a#0 in current definition for 1 blocks -debug: Added a#0 to Phi node: let a#3: uint64 = φ(a#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added a#0 to Phi node: let a#3: uint64 = φ(a#0 <- block@13, a#0 <- block@14) in block@14: // ternary_false_L17 +debug: Added a#0 to Phi node: let a#3: uint64 = Phi(a#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added a#0 to Phi node: let a#3: uint64 = Phi(a#0 <- block@13, a#0 <- block@14) in block@14: // ternary_false_L17 debug: Replacing trivial Phi node: let a#3: uint64 = φ(a#0 <- block@13, a#0 <- block@14) (a#3) with a#0 debug: Deleting Phi assignment: let a#3: uint64 = φ(a#0 <- block@13, a#0 <- block@14) debug: Replaced trivial Phi node: let a#3: uint64 = φ(a#0 <- block@13, a#0 <- block@14) (a#3) with a#0 in current definition for 1 blocks -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#0 <- block@16, a#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#0 <- block@16, a#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let a#2: uint64 = φ(a#0 <- block@16, a#0 <- block@17) (a#2) with a#0 debug: Deleting Phi assignment: let a#2: uint64 = φ(a#0 <- block@16, a#0 <- block@17) debug: Replaced trivial Phi node: let a#2: uint64 = φ(a#0 <- block@16, a#0 <- block@17) (a#2) with a#0 in current definition for 1 blocks @@ -172,112 +172,112 @@ debug: Created Phi assignment: let d#1: uint64 = undefined while trying to resol debug: Created Phi assignment: let d#2: uint64 = undefined while trying to resolve 'd' in block@15: // ternary_merge_L17 debug: Created Phi assignment: let d#3: uint64 = undefined while trying to resolve 'd' in block@12: // ternary_merge_L15 debug: Created Phi assignment: let d#4: uint64 = undefined while trying to resolve 'd' in block@9: // ternary_merge_L14 -debug: Added d#0 to Phi node: let d#4: uint64 = φ(d#0 <- block@7) in block@7: // ternary_true_L14 -debug: Added d#0 to Phi node: let d#4: uint64 = φ(d#0 <- block@7, d#0 <- block@8) in block@8: // ternary_false_L14 +debug: Added d#0 to Phi node: let d#4: uint64 = Phi(d#0 <- block@7) in block@7: // ternary_true_L14 +debug: Added d#0 to Phi node: let d#4: uint64 = Phi(d#0 <- block@7, d#0 <- block@8) in block@8: // ternary_false_L14 debug: Replacing trivial Phi node: let d#4: uint64 = φ(d#0 <- block@7, d#0 <- block@8) (d#4) with d#0 debug: Deleting Phi assignment: let d#4: uint64 = φ(d#0 <- block@7, d#0 <- block@8) debug: Replaced trivial Phi node: let d#4: uint64 = φ(d#0 <- block@7, d#0 <- block@8) (d#4) with d#0 in current definition for 1 blocks -debug: Added d#0 to Phi node: let d#3: uint64 = φ(d#0 <- block@10) in block@10: // ternary_true_L15 -debug: Added d#0 to Phi node: let d#3: uint64 = φ(d#0 <- block@10, d#0 <- block@11) in block@11: // ternary_false_L15 +debug: Added d#0 to Phi node: let d#3: uint64 = Phi(d#0 <- block@10) in block@10: // ternary_true_L15 +debug: Added d#0 to Phi node: let d#3: uint64 = Phi(d#0 <- block@10, d#0 <- block@11) in block@11: // ternary_false_L15 debug: Replacing trivial Phi node: let d#3: uint64 = φ(d#0 <- block@10, d#0 <- block@11) (d#3) with d#0 debug: Deleting Phi assignment: let d#3: uint64 = φ(d#0 <- block@10, d#0 <- block@11) debug: Replaced trivial Phi node: let d#3: uint64 = φ(d#0 <- block@10, d#0 <- block@11) (d#3) with d#0 in current definition for 1 blocks -debug: Added d#0 to Phi node: let d#2: uint64 = φ(d#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added d#0 to Phi node: let d#2: uint64 = φ(d#0 <- block@13, d#0 <- block@14) in block@14: // ternary_false_L17 +debug: Added d#0 to Phi node: let d#2: uint64 = Phi(d#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added d#0 to Phi node: let d#2: uint64 = Phi(d#0 <- block@13, d#0 <- block@14) in block@14: // ternary_false_L17 debug: Replacing trivial Phi node: let d#2: uint64 = φ(d#0 <- block@13, d#0 <- block@14) (d#2) with d#0 debug: Deleting Phi assignment: let d#2: uint64 = φ(d#0 <- block@13, d#0 <- block@14) debug: Replaced trivial Phi node: let d#2: uint64 = φ(d#0 <- block@13, d#0 <- block@14) (d#2) with d#0 in current definition for 1 blocks -debug: Added d#0 to Phi node: let d#1: uint64 = φ(d#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added d#0 to Phi node: let d#1: uint64 = φ(d#0 <- block@16, d#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added d#0 to Phi node: let d#1: uint64 = Phi(d#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added d#0 to Phi node: let d#1: uint64 = Phi(d#0 <- block@16, d#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let d#1: uint64 = φ(d#0 <- block@16, d#0 <- block@17) (d#1) with d#0 debug: Deleting Phi assignment: let d#1: uint64 = φ(d#0 <- block@16, d#0 <- block@17) debug: Replaced trivial Phi node: let d#1: uint64 = φ(d#0 <- block@16, d#0 <- block@17) (d#1) with d#0 in current definition for 1 blocks debug: Created Phi assignment: let e#1: uint64 = undefined while trying to resolve 'e' in block@18: // ternary_merge_L18 debug: Created Phi assignment: let e#2: uint64 = undefined while trying to resolve 'e' in block@15: // ternary_merge_L17 debug: Created Phi assignment: let e#3: uint64 = undefined while trying to resolve 'e' in block@12: // ternary_merge_L15 -debug: Added e#0 to Phi node: let e#3: uint64 = φ(e#0 <- block@10) in block@10: // ternary_true_L15 -debug: Added e#0 to Phi node: let e#3: uint64 = φ(e#0 <- block@10, e#0 <- block@11) in block@11: // ternary_false_L15 +debug: Added e#0 to Phi node: let e#3: uint64 = Phi(e#0 <- block@10) in block@10: // ternary_true_L15 +debug: Added e#0 to Phi node: let e#3: uint64 = Phi(e#0 <- block@10, e#0 <- block@11) in block@11: // ternary_false_L15 debug: Replacing trivial Phi node: let e#3: uint64 = φ(e#0 <- block@10, e#0 <- block@11) (e#3) with e#0 debug: Deleting Phi assignment: let e#3: uint64 = φ(e#0 <- block@10, e#0 <- block@11) debug: Replaced trivial Phi node: let e#3: uint64 = φ(e#0 <- block@10, e#0 <- block@11) (e#3) with e#0 in current definition for 1 blocks -debug: Added e#0 to Phi node: let e#2: uint64 = φ(e#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added e#0 to Phi node: let e#2: uint64 = φ(e#0 <- block@13, e#0 <- block@14) in block@14: // ternary_false_L17 +debug: Added e#0 to Phi node: let e#2: uint64 = Phi(e#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added e#0 to Phi node: let e#2: uint64 = Phi(e#0 <- block@13, e#0 <- block@14) in block@14: // ternary_false_L17 debug: Replacing trivial Phi node: let e#2: uint64 = φ(e#0 <- block@13, e#0 <- block@14) (e#2) with e#0 debug: Deleting Phi assignment: let e#2: uint64 = φ(e#0 <- block@13, e#0 <- block@14) debug: Replaced trivial Phi node: let e#2: uint64 = φ(e#0 <- block@13, e#0 <- block@14) (e#2) with e#0 in current definition for 1 blocks -debug: Added e#0 to Phi node: let e#1: uint64 = φ(e#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added e#0 to Phi node: let e#1: uint64 = φ(e#0 <- block@16, e#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added e#0 to Phi node: let e#1: uint64 = Phi(e#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added e#0 to Phi node: let e#1: uint64 = Phi(e#0 <- block@16, e#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let e#1: uint64 = φ(e#0 <- block@16, e#0 <- block@17) (e#1) with e#0 debug: Deleting Phi assignment: let e#1: uint64 = φ(e#0 <- block@16, e#0 <- block@17) debug: Replaced trivial Phi node: let e#1: uint64 = φ(e#0 <- block@16, e#0 <- block@17) (e#1) with e#0 in current definition for 1 blocks debug: Terminated block@20: // ternary_false_L20 debug: Sealing block@21: // ternary_merge_L20 debug: Created Phi assignment: let ternary_result%11#2: uint64 = undefined while trying to resolve 'ternary_result%11' in block@21: // ternary_merge_L20 -debug: Added ternary_result%11#0 to Phi node: let ternary_result%11#2: uint64 = φ(ternary_result%11#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added ternary_result%11#1 to Phi node: let ternary_result%11#2: uint64 = φ(ternary_result%11#0 <- block@19, ternary_result%11#1 <- block@20) in block@20: // ternary_false_L20 +debug: Added ternary_result%11#0 to Phi node: let ternary_result%11#2: uint64 = Phi(ternary_result%11#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added ternary_result%11#1 to Phi node: let ternary_result%11#2: uint64 = Phi(ternary_result%11#0 <- block@19, ternary_result%11#1 <- block@20) in block@20: // ternary_false_L20 debug: Created Phi assignment: let a#7: uint64 = undefined while trying to resolve 'a' in block@21: // ternary_merge_L20 -debug: Added a#0 to Phi node: let a#7: uint64 = φ(a#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added a#0 to Phi node: let a#7: uint64 = φ(a#0 <- block@19, a#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added a#0 to Phi node: let a#7: uint64 = Phi(a#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added a#0 to Phi node: let a#7: uint64 = Phi(a#0 <- block@19, a#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let a#7: uint64 = φ(a#0 <- block@19, a#0 <- block@20) (a#7) with a#0 debug: Deleting Phi assignment: let a#7: uint64 = φ(a#0 <- block@19, a#0 <- block@20) debug: Replaced trivial Phi node: let a#7: uint64 = φ(a#0 <- block@19, a#0 <- block@20) (a#7) with a#0 in current definition for 1 blocks debug: Created Phi assignment: let b#7: uint64 = undefined while trying to resolve 'b' in block@21: // ternary_merge_L20 -debug: Added b#0 to Phi node: let b#7: uint64 = φ(b#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added b#0 to Phi node: let b#7: uint64 = φ(b#0 <- block@19, b#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added b#0 to Phi node: let b#7: uint64 = Phi(b#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added b#0 to Phi node: let b#7: uint64 = Phi(b#0 <- block@19, b#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let b#7: uint64 = φ(b#0 <- block@19, b#0 <- block@20) (b#7) with b#0 debug: Deleting Phi assignment: let b#7: uint64 = φ(b#0 <- block@19, b#0 <- block@20) debug: Replaced trivial Phi node: let b#7: uint64 = φ(b#0 <- block@19, b#0 <- block@20) (b#7) with b#0 in current definition for 1 blocks debug: Created Phi assignment: let c#6: uint64 = undefined while trying to resolve 'c' in block@21: // ternary_merge_L20 -debug: Added c#0 to Phi node: let c#6: uint64 = φ(c#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added c#0 to Phi node: let c#6: uint64 = φ(c#0 <- block@19, c#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added c#0 to Phi node: let c#6: uint64 = Phi(c#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added c#0 to Phi node: let c#6: uint64 = Phi(c#0 <- block@19, c#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let c#6: uint64 = φ(c#0 <- block@19, c#0 <- block@20) (c#6) with c#0 debug: Deleting Phi assignment: let c#6: uint64 = φ(c#0 <- block@19, c#0 <- block@20) debug: Replaced trivial Phi node: let c#6: uint64 = φ(c#0 <- block@19, c#0 <- block@20) (c#6) with c#0 in current definition for 1 blocks debug: Created Phi assignment: let d#5: uint64 = undefined while trying to resolve 'd' in block@21: // ternary_merge_L20 -debug: Added d#0 to Phi node: let d#5: uint64 = φ(d#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added d#0 to Phi node: let d#5: uint64 = φ(d#0 <- block@19, d#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added d#0 to Phi node: let d#5: uint64 = Phi(d#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added d#0 to Phi node: let d#5: uint64 = Phi(d#0 <- block@19, d#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let d#5: uint64 = φ(d#0 <- block@19, d#0 <- block@20) (d#5) with d#0 debug: Deleting Phi assignment: let d#5: uint64 = φ(d#0 <- block@19, d#0 <- block@20) debug: Replaced trivial Phi node: let d#5: uint64 = φ(d#0 <- block@19, d#0 <- block@20) (d#5) with d#0 in current definition for 1 blocks debug: Created Phi assignment: let f#1: uint64 = undefined while trying to resolve 'f' in block@21: // ternary_merge_L20 debug: Created Phi assignment: let f#2: uint64 = undefined while trying to resolve 'f' in block@18: // ternary_merge_L18 debug: Created Phi assignment: let f#3: uint64 = undefined while trying to resolve 'f' in block@15: // ternary_merge_L17 -debug: Added f#0 to Phi node: let f#3: uint64 = φ(f#0 <- block@13) in block@13: // ternary_true_L17 -debug: Added f#0 to Phi node: let f#3: uint64 = φ(f#0 <- block@13, f#0 <- block@14) in block@14: // ternary_false_L17 +debug: Added f#0 to Phi node: let f#3: uint64 = Phi(f#0 <- block@13) in block@13: // ternary_true_L17 +debug: Added f#0 to Phi node: let f#3: uint64 = Phi(f#0 <- block@13, f#0 <- block@14) in block@14: // ternary_false_L17 debug: Replacing trivial Phi node: let f#3: uint64 = φ(f#0 <- block@13, f#0 <- block@14) (f#3) with f#0 debug: Deleting Phi assignment: let f#3: uint64 = φ(f#0 <- block@13, f#0 <- block@14) debug: Replaced trivial Phi node: let f#3: uint64 = φ(f#0 <- block@13, f#0 <- block@14) (f#3) with f#0 in current definition for 1 blocks -debug: Added f#0 to Phi node: let f#2: uint64 = φ(f#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added f#0 to Phi node: let f#2: uint64 = φ(f#0 <- block@16, f#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added f#0 to Phi node: let f#2: uint64 = Phi(f#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added f#0 to Phi node: let f#2: uint64 = Phi(f#0 <- block@16, f#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let f#2: uint64 = φ(f#0 <- block@16, f#0 <- block@17) (f#2) with f#0 debug: Deleting Phi assignment: let f#2: uint64 = φ(f#0 <- block@16, f#0 <- block@17) debug: Replaced trivial Phi node: let f#2: uint64 = φ(f#0 <- block@16, f#0 <- block@17) (f#2) with f#0 in current definition for 1 blocks -debug: Added f#0 to Phi node: let f#1: uint64 = φ(f#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added f#0 to Phi node: let f#1: uint64 = φ(f#0 <- block@19, f#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added f#0 to Phi node: let f#1: uint64 = Phi(f#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added f#0 to Phi node: let f#1: uint64 = Phi(f#0 <- block@19, f#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let f#1: uint64 = φ(f#0 <- block@19, f#0 <- block@20) (f#1) with f#0 debug: Deleting Phi assignment: let f#1: uint64 = φ(f#0 <- block@19, f#0 <- block@20) debug: Replaced trivial Phi node: let f#1: uint64 = φ(f#0 <- block@19, f#0 <- block@20) (f#1) with f#0 in current definition for 1 blocks debug: Created Phi assignment: let h#1: uint64 = undefined while trying to resolve 'h' in block@21: // ternary_merge_L20 -debug: Added h#0 to Phi node: let h#1: uint64 = φ(h#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added h#0 to Phi node: let h#1: uint64 = φ(h#0 <- block@19, h#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added h#0 to Phi node: let h#1: uint64 = Phi(h#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added h#0 to Phi node: let h#1: uint64 = Phi(h#0 <- block@19, h#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let h#1: uint64 = φ(h#0 <- block@19, h#0 <- block@20) (h#1) with h#0 debug: Deleting Phi assignment: let h#1: uint64 = φ(h#0 <- block@19, h#0 <- block@20) debug: Replaced trivial Phi node: let h#1: uint64 = φ(h#0 <- block@19, h#0 <- block@20) (h#1) with h#0 in current definition for 1 blocks debug: Created Phi assignment: let e#4: uint64 = undefined while trying to resolve 'e' in block@21: // ternary_merge_L20 -debug: Added e#0 to Phi node: let e#4: uint64 = φ(e#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added e#0 to Phi node: let e#4: uint64 = φ(e#0 <- block@19, e#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added e#0 to Phi node: let e#4: uint64 = Phi(e#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added e#0 to Phi node: let e#4: uint64 = Phi(e#0 <- block@19, e#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let e#4: uint64 = φ(e#0 <- block@19, e#0 <- block@20) (e#4) with e#0 debug: Deleting Phi assignment: let e#4: uint64 = φ(e#0 <- block@19, e#0 <- block@20) debug: Replaced trivial Phi node: let e#4: uint64 = φ(e#0 <- block@19, e#0 <- block@20) (e#4) with e#0 in current definition for 1 blocks debug: Created Phi assignment: let g#1: uint64 = undefined while trying to resolve 'g' in block@21: // ternary_merge_L20 debug: Created Phi assignment: let g#2: uint64 = undefined while trying to resolve 'g' in block@18: // ternary_merge_L18 -debug: Added g#0 to Phi node: let g#2: uint64 = φ(g#0 <- block@16) in block@16: // ternary_true_L18 -debug: Added g#0 to Phi node: let g#2: uint64 = φ(g#0 <- block@16, g#0 <- block@17) in block@17: // ternary_false_L18 +debug: Added g#0 to Phi node: let g#2: uint64 = Phi(g#0 <- block@16) in block@16: // ternary_true_L18 +debug: Added g#0 to Phi node: let g#2: uint64 = Phi(g#0 <- block@16, g#0 <- block@17) in block@17: // ternary_false_L18 debug: Replacing trivial Phi node: let g#2: uint64 = φ(g#0 <- block@16, g#0 <- block@17) (g#2) with g#0 debug: Deleting Phi assignment: let g#2: uint64 = φ(g#0 <- block@16, g#0 <- block@17) debug: Replaced trivial Phi node: let g#2: uint64 = φ(g#0 <- block@16, g#0 <- block@17) (g#2) with g#0 in current definition for 1 blocks -debug: Added g#0 to Phi node: let g#1: uint64 = φ(g#0 <- block@19) in block@19: // ternary_true_L20 -debug: Added g#0 to Phi node: let g#1: uint64 = φ(g#0 <- block@19, g#0 <- block@20) in block@20: // ternary_false_L20 +debug: Added g#0 to Phi node: let g#1: uint64 = Phi(g#0 <- block@19) in block@19: // ternary_true_L20 +debug: Added g#0 to Phi node: let g#1: uint64 = Phi(g#0 <- block@19, g#0 <- block@20) in block@20: // ternary_false_L20 debug: Replacing trivial Phi node: let g#1: uint64 = φ(g#0 <- block@19, g#0 <- block@20) (g#1) with g#0 debug: Deleting Phi assignment: let g#1: uint64 = φ(g#0 <- block@19, g#0 <- block@20) debug: Replaced trivial Phi node: let g#1: uint64 = φ(g#0 <- block@19, g#0 <- block@20) (g#1) with g#0 in current definition for 1 blocks diff --git a/examples/edverify/puya.log b/examples/edverify/puya.log index c620e31599..92fb147eca 100644 --- a/examples/edverify/puya.log +++ b/examples/edverify/puya.log @@ -11,8 +11,8 @@ debug: Terminated block@1: // ternary_true_L12 debug: Terminated block@2: // ternary_false_L12 debug: Sealing block@3: // ternary_merge_L12 debug: Created Phi assignment: let ternary_result%5#2: uint64 = undefined while trying to resolve 'ternary_result%5' in block@3: // ternary_merge_L12 -debug: Added ternary_result%5#0 to Phi node: let ternary_result%5#2: uint64 = φ(ternary_result%5#0 <- block@1) in block@1: // ternary_true_L12 -debug: Added ternary_result%5#1 to Phi node: let ternary_result%5#2: uint64 = φ(ternary_result%5#0 <- block@1, ternary_result%5#1 <- block@2) in block@2: // ternary_false_L12 +debug: Added ternary_result%5#0 to Phi node: let ternary_result%5#2: uint64 = Phi(ternary_result%5#0 <- block@1) in block@1: // ternary_true_L12 +debug: Added ternary_result%5#1 to Phi node: let ternary_result%5#2: uint64 = Phi(ternary_result%5#0 <- block@1, ternary_result%5#1 <- block@2) in block@2: // ternary_false_L12 debug: Terminated block@3: // ternary_merge_L12 debug: Sealing block@0: // L15 debug: Terminated block@0: // L15 diff --git a/examples/enumeration/puya.log b/examples/enumeration/puya.log index 3f746965ca..1992bad220 100644 --- a/examples/enumeration/puya.log +++ b/examples/enumeration/puya.log @@ -18,27 +18,27 @@ debug: Sealing block@3: // for_footer_L38 debug: Sealing block@None: // after_for_L38 debug: Terminated block@3: // for_footer_L38 debug: Sealing block@1: // for_header_L38 -debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0) in block@0: // L33 -debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L38 -debug: Added iteration_count#0 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@0) in block@0: // L33 -debug: Added iteration_count#2 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@0, iteration_count#2 <- block@3) in block@3: // for_footer_L38 -debug: Added item_sum#0 to Phi node: let item_sum#1: uint64 = φ(item_sum#0 <- block@0) in block@0: // L33 -debug: Added item_sum#2 to Phi node: let item_sum#1: uint64 = φ(item_sum#0 <- block@0, item_sum#2 <- block@3) in block@3: // for_footer_L38 +debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0) in block@0: // L33 +debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L38 +debug: Added iteration_count#0 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@0) in block@0: // L33 +debug: Added iteration_count#2 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@0, iteration_count#2 <- block@3) in block@3: // for_footer_L38 +debug: Added item_sum#0 to Phi node: let item_sum#1: uint64 = Phi(item_sum#0 <- block@0) in block@0: // L33 +debug: Added item_sum#2 to Phi node: let item_sum#1: uint64 = Phi(item_sum#0 <- block@0, item_sum#2 <- block@3) in block@3: // for_footer_L38 debug: Created Phi assignment: let step#1: uint64 = undefined while trying to resolve 'step' in block@1: // for_header_L38 -debug: Added step#0 to Phi node: let step#1: uint64 = φ(step#0 <- block@0) in block@0: // L33 -debug: Added step#1 to Phi node: let step#1: uint64 = φ(step#0 <- block@0, step#1 <- block@3) in block@3: // for_footer_L38 +debug: Added step#0 to Phi node: let step#1: uint64 = Phi(step#0 <- block@0) in block@0: // L33 +debug: Added step#1 to Phi node: let step#1: uint64 = Phi(step#0 <- block@0, step#1 <- block@3) in block@3: // for_footer_L38 debug: Replacing trivial Phi node: let step#1: uint64 = φ(step#0 <- block@0, step#1 <- block@3) (step#1) with step#0 debug: Deleting Phi assignment: let step#1: uint64 = φ(step#0 <- block@0, step#1 <- block@3) debug: Replaced trivial Phi node: let step#1: uint64 = φ(step#0 <- block@0, step#1 <- block@3) (step#1) with step#0 in current definition for 3 blocks debug: Created Phi assignment: let stop#1: uint64 = undefined while trying to resolve 'stop' in block@1: // for_header_L38 -debug: Added stop#0 to Phi node: let stop#1: uint64 = φ(stop#0 <- block@0) in block@0: // L33 -debug: Added stop#1 to Phi node: let stop#1: uint64 = φ(stop#0 <- block@0, stop#1 <- block@3) in block@3: // for_footer_L38 +debug: Added stop#0 to Phi node: let stop#1: uint64 = Phi(stop#0 <- block@0) in block@0: // L33 +debug: Added stop#1 to Phi node: let stop#1: uint64 = Phi(stop#0 <- block@0, stop#1 <- block@3) in block@3: // for_footer_L38 debug: Replacing trivial Phi node: let stop#1: uint64 = φ(stop#0 <- block@0, stop#1 <- block@3) (stop#1) with stop#0 debug: Deleting Phi assignment: let stop#1: uint64 = φ(stop#0 <- block@0, stop#1 <- block@3) debug: Replaced trivial Phi node: let stop#1: uint64 = φ(stop#0 <- block@0, stop#1 <- block@3) (stop#1) with stop#0 in current definition for 3 blocks debug: Created Phi assignment: let start#1: uint64 = undefined while trying to resolve 'start' in block@1: // for_header_L38 -debug: Added start#0 to Phi node: let start#1: uint64 = φ(start#0 <- block@0) in block@0: // L33 -debug: Added start#1 to Phi node: let start#1: uint64 = φ(start#0 <- block@0, start#1 <- block@3) in block@3: // for_footer_L38 +debug: Added start#0 to Phi node: let start#1: uint64 = Phi(start#0 <- block@0) in block@0: // L33 +debug: Added start#1 to Phi node: let start#1: uint64 = Phi(start#0 <- block@0, start#1 <- block@3) in block@3: // for_footer_L38 debug: Replacing trivial Phi node: let start#1: uint64 = φ(start#0 <- block@0, start#1 <- block@3) (start#1) with start#0 debug: Deleting Phi assignment: let start#1: uint64 = φ(start#0 <- block@0, start#1 <- block@3) debug: Replaced trivial Phi node: let start#1: uint64 = φ(start#0 <- block@0, start#1 <- block@3) (start#1) with start#0 in current definition for 3 blocks @@ -60,22 +60,22 @@ debug: Sealing block@7: // for_footer_L42 debug: Sealing block@None: // after_for_L42 debug: Terminated block@7: // for_footer_L42 debug: Sealing block@5: // for_header_L42 -debug: Added range_item%2#0 to Phi node: let range_item%2#1: uint64 = φ(range_item%2#0 <- block@4) in block@4: // after_for_L38 -debug: Added range_item%2#2 to Phi node: let range_item%2#1: uint64 = φ(range_item%2#0 <- block@4, range_item%2#2 <- block@7) in block@7: // for_footer_L42 -debug: Added range_index%3#0 to Phi node: let range_index%3#1: uint64 = φ(range_index%3#0 <- block@4) in block@4: // after_for_L38 -debug: Added range_index%3#2 to Phi node: let range_index%3#1: uint64 = φ(range_index%3#0 <- block@4, range_index%3#2 <- block@7) in block@7: // for_footer_L42 -debug: Added iteration_count#1 to Phi node: let iteration_count#3: uint64 = φ(iteration_count#1 <- block@4) in block@4: // after_for_L38 -debug: Added iteration_count#4 to Phi node: let iteration_count#3: uint64 = φ(iteration_count#1 <- block@4, iteration_count#4 <- block@7) in block@7: // for_footer_L42 -debug: Added item_sum#1 to Phi node: let item_sum#3: uint64 = φ(item_sum#1 <- block@4) in block@4: // after_for_L38 -debug: Added item_sum#4 to Phi node: let item_sum#3: uint64 = φ(item_sum#1 <- block@4, item_sum#4 <- block@7) in block@7: // for_footer_L42 +debug: Added range_item%2#0 to Phi node: let range_item%2#1: uint64 = Phi(range_item%2#0 <- block@4) in block@4: // after_for_L38 +debug: Added range_item%2#2 to Phi node: let range_item%2#1: uint64 = Phi(range_item%2#0 <- block@4, range_item%2#2 <- block@7) in block@7: // for_footer_L42 +debug: Added range_index%3#0 to Phi node: let range_index%3#1: uint64 = Phi(range_index%3#0 <- block@4) in block@4: // after_for_L38 +debug: Added range_index%3#2 to Phi node: let range_index%3#1: uint64 = Phi(range_index%3#0 <- block@4, range_index%3#2 <- block@7) in block@7: // for_footer_L42 +debug: Added iteration_count#1 to Phi node: let iteration_count#3: uint64 = Phi(iteration_count#1 <- block@4) in block@4: // after_for_L38 +debug: Added iteration_count#4 to Phi node: let iteration_count#3: uint64 = Phi(iteration_count#1 <- block@4, iteration_count#4 <- block@7) in block@7: // for_footer_L42 +debug: Added item_sum#1 to Phi node: let item_sum#3: uint64 = Phi(item_sum#1 <- block@4) in block@4: // after_for_L38 +debug: Added item_sum#4 to Phi node: let item_sum#3: uint64 = Phi(item_sum#1 <- block@4, item_sum#4 <- block@7) in block@7: // for_footer_L42 debug: Created Phi assignment: let index_sum#3: uint64 = undefined while trying to resolve 'index_sum' in block@1: // for_header_L38 -debug: Added index_sum#0 to Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0) in block@0: // L33 -debug: Added index_sum#3 to Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) in block@3: // for_footer_L38 +debug: Added index_sum#0 to Phi node: let index_sum#3: uint64 = Phi(index_sum#0 <- block@0) in block@0: // L33 +debug: Added index_sum#3 to Phi node: let index_sum#3: uint64 = Phi(index_sum#0 <- block@0, index_sum#3 <- block@3) in block@3: // for_footer_L38 debug: Replacing trivial Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) (index_sum#3) with index_sum#0 debug: Deleting Phi assignment: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) debug: Replaced trivial Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) (index_sum#3) with index_sum#0 in current definition for 3 blocks -debug: Added index_sum#0 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@4) in block@4: // after_for_L38 -debug: Added index_sum#2 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@4, index_sum#2 <- block@7) in block@7: // for_footer_L42 +debug: Added index_sum#0 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@4) in block@4: // after_for_L38 +debug: Added index_sum#2 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@4, index_sum#2 <- block@7) in block@7: // for_footer_L42 debug: Terminated block@8: // after_for_L42 debug: Sealing block@0: // L51 debug: Terminated block@0: // L51 @@ -86,115 +86,115 @@ debug: Terminated block@3: // for_header_2_L56 debug: Terminated block@4: // for_header_3_L56 debug: Sealing block@None: // for_body_L56 debug: Created Phi assignment: let iteration_count#1: uint64 = undefined while trying to resolve 'iteration_count' in block@5: // for_body_L56 -debug: Added iteration_count#0 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added iteration_count#0 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@1) in block@1: // for_header_0_L56 debug: Looking for 'iteration_count' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L56 debug: Created Phi assignment: let iteration_count#2: uint64 = undefined while trying to resolve 'iteration_count' in block@2: // for_header_1_L56 -debug: Added iteration_count#2 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@1, iteration_count#2 <- block@2) in block@2: // for_header_1_L56 +debug: Added iteration_count#2 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@1, iteration_count#2 <- block@2) in block@2: // for_header_1_L56 debug: Looking for 'iteration_count' in an unsealed block creating an incomplete Phi: block@3: // for_header_2_L56 debug: Created Phi assignment: let iteration_count#3: uint64 = undefined while trying to resolve 'iteration_count' in block@3: // for_header_2_L56 -debug: Added iteration_count#3 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@1, iteration_count#2 <- block@2, iteration_count#3 <- block@3) in block@3: // for_header_2_L56 +debug: Added iteration_count#3 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@1, iteration_count#2 <- block@2, iteration_count#3 <- block@3) in block@3: // for_header_2_L56 debug: Looking for 'iteration_count' in an unsealed block creating an incomplete Phi: block@4: // for_header_3_L56 debug: Created Phi assignment: let iteration_count#4: uint64 = undefined while trying to resolve 'iteration_count' in block@4: // for_header_3_L56 -debug: Added iteration_count#4 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@1, iteration_count#2 <- block@2, iteration_count#3 <- block@3, iteration_count#4 <- block@4) in block@4: // for_header_3_L56 +debug: Added iteration_count#4 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@1, iteration_count#2 <- block@2, iteration_count#3 <- block@3, iteration_count#4 <- block@4) in block@4: // for_header_3_L56 debug: Created Phi assignment: let item_concat#1: bytes = undefined while trying to resolve 'item_concat' in block@5: // for_body_L56 -debug: Added item_concat#0 to Phi node: let item_concat#1: bytes = φ(item_concat#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added item_concat#0 to Phi node: let item_concat#1: bytes = Phi(item_concat#0 <- block@1) in block@1: // for_header_0_L56 debug: Looking for 'item_concat' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L56 debug: Created Phi assignment: let item_concat#2: bytes = undefined while trying to resolve 'item_concat' in block@2: // for_header_1_L56 -debug: Added item_concat#2 to Phi node: let item_concat#1: bytes = φ(item_concat#0 <- block@1, item_concat#2 <- block@2) in block@2: // for_header_1_L56 +debug: Added item_concat#2 to Phi node: let item_concat#1: bytes = Phi(item_concat#0 <- block@1, item_concat#2 <- block@2) in block@2: // for_header_1_L56 debug: Looking for 'item_concat' in an unsealed block creating an incomplete Phi: block@3: // for_header_2_L56 debug: Created Phi assignment: let item_concat#3: bytes = undefined while trying to resolve 'item_concat' in block@3: // for_header_2_L56 -debug: Added item_concat#3 to Phi node: let item_concat#1: bytes = φ(item_concat#0 <- block@1, item_concat#2 <- block@2, item_concat#3 <- block@3) in block@3: // for_header_2_L56 +debug: Added item_concat#3 to Phi node: let item_concat#1: bytes = Phi(item_concat#0 <- block@1, item_concat#2 <- block@2, item_concat#3 <- block@3) in block@3: // for_header_2_L56 debug: Looking for 'item_concat' in an unsealed block creating an incomplete Phi: block@4: // for_header_3_L56 debug: Created Phi assignment: let item_concat#4: bytes = undefined while trying to resolve 'item_concat' in block@4: // for_header_3_L56 -debug: Added item_concat#4 to Phi node: let item_concat#1: bytes = φ(item_concat#0 <- block@1, item_concat#2 <- block@2, item_concat#3 <- block@3, item_concat#4 <- block@4) in block@4: // for_header_3_L56 +debug: Added item_concat#4 to Phi node: let item_concat#1: bytes = Phi(item_concat#0 <- block@1, item_concat#2 <- block@2, item_concat#3 <- block@3, item_concat#4 <- block@4) in block@4: // for_header_3_L56 debug: Created Phi assignment: let item#4: bytes = undefined while trying to resolve 'item' in block@5: // for_body_L56 -debug: Added item#0 to Phi node: let item#4: bytes = φ(item#0 <- block@1) in block@1: // for_header_0_L56 -debug: Added item#1 to Phi node: let item#4: bytes = φ(item#0 <- block@1, item#1 <- block@2) in block@2: // for_header_1_L56 -debug: Added item#2 to Phi node: let item#4: bytes = φ(item#0 <- block@1, item#1 <- block@2, item#2 <- block@3) in block@3: // for_header_2_L56 -debug: Added item#3 to Phi node: let item#4: bytes = φ(item#0 <- block@1, item#1 <- block@2, item#2 <- block@3, item#3 <- block@4) in block@4: // for_header_3_L56 +debug: Added item#0 to Phi node: let item#4: bytes = Phi(item#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added item#1 to Phi node: let item#4: bytes = Phi(item#0 <- block@1, item#1 <- block@2) in block@2: // for_header_1_L56 +debug: Added item#2 to Phi node: let item#4: bytes = Phi(item#0 <- block@1, item#1 <- block@2, item#2 <- block@3) in block@3: // for_header_2_L56 +debug: Added item#3 to Phi node: let item#4: bytes = Phi(item#0 <- block@1, item#1 <- block@2, item#2 <- block@3, item#3 <- block@4) in block@4: // for_header_3_L56 debug: Terminated block@5: // for_body_L56 debug: Sealing block@6: // for_footer_L56 debug: Created Phi assignment: let tuple_index%0#1: uint64 = undefined while trying to resolve 'tuple_index%0' in block@5: // for_body_L56 -debug: Added tuple_index%0#0 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added tuple_index%0#0 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1) in block@1: // for_header_0_L56 debug: Looking for 'tuple_index%0' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L56 debug: Created Phi assignment: let tuple_index%0#2: uint64 = undefined while trying to resolve 'tuple_index%0' in block@2: // for_header_1_L56 -debug: Added tuple_index%0#2 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2) in block@2: // for_header_1_L56 +debug: Added tuple_index%0#2 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2) in block@2: // for_header_1_L56 debug: Looking for 'tuple_index%0' in an unsealed block creating an incomplete Phi: block@3: // for_header_2_L56 debug: Created Phi assignment: let tuple_index%0#3: uint64 = undefined while trying to resolve 'tuple_index%0' in block@3: // for_header_2_L56 -debug: Added tuple_index%0#3 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2, tuple_index%0#3 <- block@3) in block@3: // for_header_2_L56 +debug: Added tuple_index%0#3 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2, tuple_index%0#3 <- block@3) in block@3: // for_header_2_L56 debug: Looking for 'tuple_index%0' in an unsealed block creating an incomplete Phi: block@4: // for_header_3_L56 debug: Created Phi assignment: let tuple_index%0#4: uint64 = undefined while trying to resolve 'tuple_index%0' in block@4: // for_header_3_L56 -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2, tuple_index%0#3 <- block@3, tuple_index%0#4 <- block@4) in block@4: // for_header_3_L56 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2, tuple_index%0#3 <- block@3, tuple_index%0#4 <- block@4) in block@4: // for_header_3_L56 debug: Terminated block@6: // for_footer_L56 debug: Sealing block@2: // for_header_1_L56 -debug: Added iteration_count#5 to Phi node: let iteration_count#2: uint64 = φ(iteration_count#5 <- block@6) in block@6: // for_footer_L56 +debug: Added iteration_count#5 to Phi node: let iteration_count#2: uint64 = Phi(iteration_count#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let iteration_count#2: uint64 = φ(iteration_count#5 <- block@6) (iteration_count#2) with iteration_count#5 debug: Deleting Phi assignment: let iteration_count#2: uint64 = φ(iteration_count#5 <- block@6) debug: Replaced trivial Phi node: let iteration_count#2: uint64 = φ(iteration_count#5 <- block@6) (iteration_count#2) with iteration_count#5 in current definition for 1 blocks -debug: Added item_concat#5 to Phi node: let item_concat#2: bytes = φ(item_concat#5 <- block@6) in block@6: // for_footer_L56 +debug: Added item_concat#5 to Phi node: let item_concat#2: bytes = Phi(item_concat#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let item_concat#2: bytes = φ(item_concat#5 <- block@6) (item_concat#2) with item_concat#5 debug: Deleting Phi assignment: let item_concat#2: bytes = φ(item_concat#5 <- block@6) debug: Replaced trivial Phi node: let item_concat#2: bytes = φ(item_concat#5 <- block@6) (item_concat#2) with item_concat#5 in current definition for 1 blocks -debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#5 <- block@6) in block@6: // for_footer_L56 +debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#2: uint64 = Phi(tuple_index%0#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#5 <- block@6) (tuple_index%0#2) with tuple_index%0#5 debug: Deleting Phi assignment: let tuple_index%0#2: uint64 = φ(tuple_index%0#5 <- block@6) debug: Replaced trivial Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#5 <- block@6) (tuple_index%0#2) with tuple_index%0#5 in current definition for 1 blocks debug: Sealing block@3: // for_header_2_L56 -debug: Added iteration_count#5 to Phi node: let iteration_count#3: uint64 = φ(iteration_count#5 <- block@6) in block@6: // for_footer_L56 +debug: Added iteration_count#5 to Phi node: let iteration_count#3: uint64 = Phi(iteration_count#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let iteration_count#3: uint64 = φ(iteration_count#5 <- block@6) (iteration_count#3) with iteration_count#5 debug: Deleting Phi assignment: let iteration_count#3: uint64 = φ(iteration_count#5 <- block@6) debug: Replaced trivial Phi node: let iteration_count#3: uint64 = φ(iteration_count#5 <- block@6) (iteration_count#3) with iteration_count#5 in current definition for 1 blocks -debug: Added item_concat#5 to Phi node: let item_concat#3: bytes = φ(item_concat#5 <- block@6) in block@6: // for_footer_L56 +debug: Added item_concat#5 to Phi node: let item_concat#3: bytes = Phi(item_concat#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let item_concat#3: bytes = φ(item_concat#5 <- block@6) (item_concat#3) with item_concat#5 debug: Deleting Phi assignment: let item_concat#3: bytes = φ(item_concat#5 <- block@6) debug: Replaced trivial Phi node: let item_concat#3: bytes = φ(item_concat#5 <- block@6) (item_concat#3) with item_concat#5 in current definition for 1 blocks -debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#5 <- block@6) in block@6: // for_footer_L56 +debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#3: uint64 = Phi(tuple_index%0#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#5 <- block@6) (tuple_index%0#3) with tuple_index%0#5 debug: Deleting Phi assignment: let tuple_index%0#3: uint64 = φ(tuple_index%0#5 <- block@6) debug: Replaced trivial Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#5 <- block@6) (tuple_index%0#3) with tuple_index%0#5 in current definition for 1 blocks debug: Sealing block@4: // for_header_3_L56 -debug: Added iteration_count#5 to Phi node: let iteration_count#4: uint64 = φ(iteration_count#5 <- block@6) in block@6: // for_footer_L56 +debug: Added iteration_count#5 to Phi node: let iteration_count#4: uint64 = Phi(iteration_count#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let iteration_count#4: uint64 = φ(iteration_count#5 <- block@6) (iteration_count#4) with iteration_count#5 debug: Deleting Phi assignment: let iteration_count#4: uint64 = φ(iteration_count#5 <- block@6) debug: Replaced trivial Phi node: let iteration_count#4: uint64 = φ(iteration_count#5 <- block@6) (iteration_count#4) with iteration_count#5 in current definition for 1 blocks -debug: Added item_concat#5 to Phi node: let item_concat#4: bytes = φ(item_concat#5 <- block@6) in block@6: // for_footer_L56 +debug: Added item_concat#5 to Phi node: let item_concat#4: bytes = Phi(item_concat#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let item_concat#4: bytes = φ(item_concat#5 <- block@6) (item_concat#4) with item_concat#5 debug: Deleting Phi assignment: let item_concat#4: bytes = φ(item_concat#5 <- block@6) debug: Replaced trivial Phi node: let item_concat#4: bytes = φ(item_concat#5 <- block@6) (item_concat#4) with item_concat#5 in current definition for 1 blocks -debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@6) in block@6: // for_footer_L56 +debug: Added tuple_index%0#5 to Phi node: let tuple_index%0#4: uint64 = Phi(tuple_index%0#5 <- block@6) in block@6: // for_footer_L56 debug: Replacing trivial Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@6) (tuple_index%0#4) with tuple_index%0#5 debug: Deleting Phi assignment: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@6) debug: Replaced trivial Phi node: let tuple_index%0#4: uint64 = φ(tuple_index%0#5 <- block@6) (tuple_index%0#4) with tuple_index%0#5 in current definition for 1 blocks debug: Sealing block@None: // after_for_L56 debug: Created Phi assignment: let tup.0#1: bytes = undefined while trying to resolve 'tup.0' in block@5: // for_body_L56 -debug: Added tup.0#0 to Phi node: let tup.0#1: bytes = φ(tup.0#0 <- block@1) in block@1: // for_header_0_L56 -debug: Added tup.0#1 to Phi node: let tup.0#1: bytes = φ(tup.0#0 <- block@1, tup.0#1 <- block@2) in block@2: // for_header_1_L56 -debug: Added tup.0#1 to Phi node: let tup.0#1: bytes = φ(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3) in block@3: // for_header_2_L56 -debug: Added tup.0#1 to Phi node: let tup.0#1: bytes = φ(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3, tup.0#1 <- block@4) in block@4: // for_header_3_L56 +debug: Added tup.0#0 to Phi node: let tup.0#1: bytes = Phi(tup.0#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added tup.0#1 to Phi node: let tup.0#1: bytes = Phi(tup.0#0 <- block@1, tup.0#1 <- block@2) in block@2: // for_header_1_L56 +debug: Added tup.0#1 to Phi node: let tup.0#1: bytes = Phi(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3) in block@3: // for_header_2_L56 +debug: Added tup.0#1 to Phi node: let tup.0#1: bytes = Phi(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3, tup.0#1 <- block@4) in block@4: // for_header_3_L56 debug: Replacing trivial Phi node: let tup.0#1: bytes = φ(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3, tup.0#1 <- block@4) (tup.0#1) with tup.0#0 debug: Deleting Phi assignment: let tup.0#1: bytes = φ(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3, tup.0#1 <- block@4) debug: Replaced trivial Phi node: let tup.0#1: bytes = φ(tup.0#0 <- block@1, tup.0#1 <- block@2, tup.0#1 <- block@3, tup.0#1 <- block@4) (tup.0#1) with tup.0#0 in current definition for 5 blocks debug: Created Phi assignment: let tup.1#1: bytes = undefined while trying to resolve 'tup.1' in block@5: // for_body_L56 -debug: Added tup.1#0 to Phi node: let tup.1#1: bytes = φ(tup.1#0 <- block@1) in block@1: // for_header_0_L56 -debug: Added tup.1#1 to Phi node: let tup.1#1: bytes = φ(tup.1#0 <- block@1, tup.1#1 <- block@2) in block@2: // for_header_1_L56 -debug: Added tup.1#1 to Phi node: let tup.1#1: bytes = φ(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3) in block@3: // for_header_2_L56 -debug: Added tup.1#1 to Phi node: let tup.1#1: bytes = φ(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3, tup.1#1 <- block@4) in block@4: // for_header_3_L56 +debug: Added tup.1#0 to Phi node: let tup.1#1: bytes = Phi(tup.1#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added tup.1#1 to Phi node: let tup.1#1: bytes = Phi(tup.1#0 <- block@1, tup.1#1 <- block@2) in block@2: // for_header_1_L56 +debug: Added tup.1#1 to Phi node: let tup.1#1: bytes = Phi(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3) in block@3: // for_header_2_L56 +debug: Added tup.1#1 to Phi node: let tup.1#1: bytes = Phi(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3, tup.1#1 <- block@4) in block@4: // for_header_3_L56 debug: Replacing trivial Phi node: let tup.1#1: bytes = φ(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3, tup.1#1 <- block@4) (tup.1#1) with tup.1#0 debug: Deleting Phi assignment: let tup.1#1: bytes = φ(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3, tup.1#1 <- block@4) debug: Replaced trivial Phi node: let tup.1#1: bytes = φ(tup.1#0 <- block@1, tup.1#1 <- block@2, tup.1#1 <- block@3, tup.1#1 <- block@4) (tup.1#1) with tup.1#0 in current definition for 5 blocks debug: Created Phi assignment: let tup.2#1: bytes = undefined while trying to resolve 'tup.2' in block@5: // for_body_L56 -debug: Added tup.2#0 to Phi node: let tup.2#1: bytes = φ(tup.2#0 <- block@1) in block@1: // for_header_0_L56 -debug: Added tup.2#1 to Phi node: let tup.2#1: bytes = φ(tup.2#0 <- block@1, tup.2#1 <- block@2) in block@2: // for_header_1_L56 -debug: Added tup.2#1 to Phi node: let tup.2#1: bytes = φ(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3) in block@3: // for_header_2_L56 -debug: Added tup.2#1 to Phi node: let tup.2#1: bytes = φ(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3, tup.2#1 <- block@4) in block@4: // for_header_3_L56 +debug: Added tup.2#0 to Phi node: let tup.2#1: bytes = Phi(tup.2#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added tup.2#1 to Phi node: let tup.2#1: bytes = Phi(tup.2#0 <- block@1, tup.2#1 <- block@2) in block@2: // for_header_1_L56 +debug: Added tup.2#1 to Phi node: let tup.2#1: bytes = Phi(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3) in block@3: // for_header_2_L56 +debug: Added tup.2#1 to Phi node: let tup.2#1: bytes = Phi(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3, tup.2#1 <- block@4) in block@4: // for_header_3_L56 debug: Replacing trivial Phi node: let tup.2#1: bytes = φ(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3, tup.2#1 <- block@4) (tup.2#1) with tup.2#0 debug: Deleting Phi assignment: let tup.2#1: bytes = φ(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3, tup.2#1 <- block@4) debug: Replaced trivial Phi node: let tup.2#1: bytes = φ(tup.2#0 <- block@1, tup.2#1 <- block@2, tup.2#1 <- block@3, tup.2#1 <- block@4) (tup.2#1) with tup.2#0 in current definition for 5 blocks debug: Created Phi assignment: let tup.3#1: bytes = undefined while trying to resolve 'tup.3' in block@5: // for_body_L56 -debug: Added tup.3#0 to Phi node: let tup.3#1: bytes = φ(tup.3#0 <- block@1) in block@1: // for_header_0_L56 -debug: Added tup.3#1 to Phi node: let tup.3#1: bytes = φ(tup.3#0 <- block@1, tup.3#1 <- block@2) in block@2: // for_header_1_L56 -debug: Added tup.3#1 to Phi node: let tup.3#1: bytes = φ(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3) in block@3: // for_header_2_L56 -debug: Added tup.3#1 to Phi node: let tup.3#1: bytes = φ(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3, tup.3#1 <- block@4) in block@4: // for_header_3_L56 +debug: Added tup.3#0 to Phi node: let tup.3#1: bytes = Phi(tup.3#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added tup.3#1 to Phi node: let tup.3#1: bytes = Phi(tup.3#0 <- block@1, tup.3#1 <- block@2) in block@2: // for_header_1_L56 +debug: Added tup.3#1 to Phi node: let tup.3#1: bytes = Phi(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3) in block@3: // for_header_2_L56 +debug: Added tup.3#1 to Phi node: let tup.3#1: bytes = Phi(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3, tup.3#1 <- block@4) in block@4: // for_header_3_L56 debug: Replacing trivial Phi node: let tup.3#1: bytes = φ(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3, tup.3#1 <- block@4) (tup.3#1) with tup.3#0 debug: Deleting Phi assignment: let tup.3#1: bytes = φ(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3, tup.3#1 <- block@4) debug: Replaced trivial Phi node: let tup.3#1: bytes = φ(tup.3#0 <- block@1, tup.3#1 <- block@2, tup.3#1 <- block@3, tup.3#1 <- block@4) (tup.3#1) with tup.3#0 in current definition for 5 blocks @@ -206,113 +206,113 @@ debug: Terminated block@10: // for_header_2_L59 debug: Terminated block@11: // for_header_3_L59 debug: Sealing block@None: // for_body_L59 debug: Created Phi assignment: let tuple_index%1#1: uint64 = undefined while trying to resolve 'tuple_index%1' in block@12: // for_body_L59 -debug: Added tuple_index%1#0 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@8) in block@8: // for_header_0_L59 +debug: Added tuple_index%1#0 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@8) in block@8: // for_header_0_L59 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@9: // for_header_1_L59 debug: Created Phi assignment: let tuple_index%1#2: uint64 = undefined while trying to resolve 'tuple_index%1' in block@9: // for_header_1_L59 -debug: Added tuple_index%1#2 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@8, tuple_index%1#2 <- block@9) in block@9: // for_header_1_L59 +debug: Added tuple_index%1#2 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@8, tuple_index%1#2 <- block@9) in block@9: // for_header_1_L59 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@10: // for_header_2_L59 debug: Created Phi assignment: let tuple_index%1#3: uint64 = undefined while trying to resolve 'tuple_index%1' in block@10: // for_header_2_L59 -debug: Added tuple_index%1#3 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@8, tuple_index%1#2 <- block@9, tuple_index%1#3 <- block@10) in block@10: // for_header_2_L59 +debug: Added tuple_index%1#3 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@8, tuple_index%1#2 <- block@9, tuple_index%1#3 <- block@10) in block@10: // for_header_2_L59 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@11: // for_header_3_L59 debug: Created Phi assignment: let tuple_index%1#4: uint64 = undefined while trying to resolve 'tuple_index%1' in block@11: // for_header_3_L59 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@8, tuple_index%1#2 <- block@9, tuple_index%1#3 <- block@10, tuple_index%1#4 <- block@11) in block@11: // for_header_3_L59 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@8, tuple_index%1#2 <- block@9, tuple_index%1#3 <- block@10, tuple_index%1#4 <- block@11) in block@11: // for_header_3_L59 debug: Created Phi assignment: let iteration_count#6: uint64 = undefined while trying to resolve 'iteration_count' in block@12: // for_body_L59 -debug: Added iteration_count#5 to Phi node: let iteration_count#6: uint64 = φ(iteration_count#5 <- block@8) in block@8: // for_header_0_L59 +debug: Added iteration_count#5 to Phi node: let iteration_count#6: uint64 = Phi(iteration_count#5 <- block@8) in block@8: // for_header_0_L59 debug: Looking for 'iteration_count' in an unsealed block creating an incomplete Phi: block@9: // for_header_1_L59 debug: Created Phi assignment: let iteration_count#7: uint64 = undefined while trying to resolve 'iteration_count' in block@9: // for_header_1_L59 -debug: Added iteration_count#7 to Phi node: let iteration_count#6: uint64 = φ(iteration_count#5 <- block@8, iteration_count#7 <- block@9) in block@9: // for_header_1_L59 +debug: Added iteration_count#7 to Phi node: let iteration_count#6: uint64 = Phi(iteration_count#5 <- block@8, iteration_count#7 <- block@9) in block@9: // for_header_1_L59 debug: Looking for 'iteration_count' in an unsealed block creating an incomplete Phi: block@10: // for_header_2_L59 debug: Created Phi assignment: let iteration_count#8: uint64 = undefined while trying to resolve 'iteration_count' in block@10: // for_header_2_L59 -debug: Added iteration_count#8 to Phi node: let iteration_count#6: uint64 = φ(iteration_count#5 <- block@8, iteration_count#7 <- block@9, iteration_count#8 <- block@10) in block@10: // for_header_2_L59 +debug: Added iteration_count#8 to Phi node: let iteration_count#6: uint64 = Phi(iteration_count#5 <- block@8, iteration_count#7 <- block@9, iteration_count#8 <- block@10) in block@10: // for_header_2_L59 debug: Looking for 'iteration_count' in an unsealed block creating an incomplete Phi: block@11: // for_header_3_L59 debug: Created Phi assignment: let iteration_count#9: uint64 = undefined while trying to resolve 'iteration_count' in block@11: // for_header_3_L59 -debug: Added iteration_count#9 to Phi node: let iteration_count#6: uint64 = φ(iteration_count#5 <- block@8, iteration_count#7 <- block@9, iteration_count#8 <- block@10, iteration_count#9 <- block@11) in block@11: // for_header_3_L59 +debug: Added iteration_count#9 to Phi node: let iteration_count#6: uint64 = Phi(iteration_count#5 <- block@8, iteration_count#7 <- block@9, iteration_count#8 <- block@10, iteration_count#9 <- block@11) in block@11: // for_header_3_L59 debug: Created Phi assignment: let item_concat#6: bytes = undefined while trying to resolve 'item_concat' in block@12: // for_body_L59 -debug: Added item_concat#5 to Phi node: let item_concat#6: bytes = φ(item_concat#5 <- block@8) in block@8: // for_header_0_L59 +debug: Added item_concat#5 to Phi node: let item_concat#6: bytes = Phi(item_concat#5 <- block@8) in block@8: // for_header_0_L59 debug: Looking for 'item_concat' in an unsealed block creating an incomplete Phi: block@9: // for_header_1_L59 debug: Created Phi assignment: let item_concat#7: bytes = undefined while trying to resolve 'item_concat' in block@9: // for_header_1_L59 -debug: Added item_concat#7 to Phi node: let item_concat#6: bytes = φ(item_concat#5 <- block@8, item_concat#7 <- block@9) in block@9: // for_header_1_L59 +debug: Added item_concat#7 to Phi node: let item_concat#6: bytes = Phi(item_concat#5 <- block@8, item_concat#7 <- block@9) in block@9: // for_header_1_L59 debug: Looking for 'item_concat' in an unsealed block creating an incomplete Phi: block@10: // for_header_2_L59 debug: Created Phi assignment: let item_concat#8: bytes = undefined while trying to resolve 'item_concat' in block@10: // for_header_2_L59 -debug: Added item_concat#8 to Phi node: let item_concat#6: bytes = φ(item_concat#5 <- block@8, item_concat#7 <- block@9, item_concat#8 <- block@10) in block@10: // for_header_2_L59 +debug: Added item_concat#8 to Phi node: let item_concat#6: bytes = Phi(item_concat#5 <- block@8, item_concat#7 <- block@9, item_concat#8 <- block@10) in block@10: // for_header_2_L59 debug: Looking for 'item_concat' in an unsealed block creating an incomplete Phi: block@11: // for_header_3_L59 debug: Created Phi assignment: let item_concat#9: bytes = undefined while trying to resolve 'item_concat' in block@11: // for_header_3_L59 -debug: Added item_concat#9 to Phi node: let item_concat#6: bytes = φ(item_concat#5 <- block@8, item_concat#7 <- block@9, item_concat#8 <- block@10, item_concat#9 <- block@11) in block@11: // for_header_3_L59 +debug: Added item_concat#9 to Phi node: let item_concat#6: bytes = Phi(item_concat#5 <- block@8, item_concat#7 <- block@9, item_concat#8 <- block@10, item_concat#9 <- block@11) in block@11: // for_header_3_L59 debug: Created Phi assignment: let item#9: bytes = undefined while trying to resolve 'item' in block@12: // for_body_L59 -debug: Added item#5 to Phi node: let item#9: bytes = φ(item#5 <- block@8) in block@8: // for_header_0_L59 -debug: Added item#6 to Phi node: let item#9: bytes = φ(item#5 <- block@8, item#6 <- block@9) in block@9: // for_header_1_L59 -debug: Added item#7 to Phi node: let item#9: bytes = φ(item#5 <- block@8, item#6 <- block@9, item#7 <- block@10) in block@10: // for_header_2_L59 -debug: Added item#8 to Phi node: let item#9: bytes = φ(item#5 <- block@8, item#6 <- block@9, item#7 <- block@10, item#8 <- block@11) in block@11: // for_header_3_L59 +debug: Added item#5 to Phi node: let item#9: bytes = Phi(item#5 <- block@8) in block@8: // for_header_0_L59 +debug: Added item#6 to Phi node: let item#9: bytes = Phi(item#5 <- block@8, item#6 <- block@9) in block@9: // for_header_1_L59 +debug: Added item#7 to Phi node: let item#9: bytes = Phi(item#5 <- block@8, item#6 <- block@9, item#7 <- block@10) in block@10: // for_header_2_L59 +debug: Added item#8 to Phi node: let item#9: bytes = Phi(item#5 <- block@8, item#6 <- block@9, item#7 <- block@10, item#8 <- block@11) in block@11: // for_header_3_L59 debug: Created Phi assignment: let index_sum#1: uint64 = undefined while trying to resolve 'index_sum' in block@12: // for_body_L59 debug: Created Phi assignment: let index_sum#2: uint64 = undefined while trying to resolve 'index_sum' in block@5: // for_body_L56 -debug: Added index_sum#0 to Phi node: let index_sum#2: uint64 = φ(index_sum#0 <- block@1) in block@1: // for_header_0_L56 -debug: Added index_sum#2 to Phi node: let index_sum#2: uint64 = φ(index_sum#0 <- block@1, index_sum#2 <- block@2) in block@2: // for_header_1_L56 -debug: Added index_sum#2 to Phi node: let index_sum#2: uint64 = φ(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3) in block@3: // for_header_2_L56 -debug: Added index_sum#2 to Phi node: let index_sum#2: uint64 = φ(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3, index_sum#2 <- block@4) in block@4: // for_header_3_L56 +debug: Added index_sum#0 to Phi node: let index_sum#2: uint64 = Phi(index_sum#0 <- block@1) in block@1: // for_header_0_L56 +debug: Added index_sum#2 to Phi node: let index_sum#2: uint64 = Phi(index_sum#0 <- block@1, index_sum#2 <- block@2) in block@2: // for_header_1_L56 +debug: Added index_sum#2 to Phi node: let index_sum#2: uint64 = Phi(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3) in block@3: // for_header_2_L56 +debug: Added index_sum#2 to Phi node: let index_sum#2: uint64 = Phi(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3, index_sum#2 <- block@4) in block@4: // for_header_3_L56 debug: Replacing trivial Phi node: let index_sum#2: uint64 = φ(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3, index_sum#2 <- block@4) (index_sum#2) with index_sum#0 debug: Deleting Phi assignment: let index_sum#2: uint64 = φ(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3, index_sum#2 <- block@4) debug: Replaced trivial Phi node: let index_sum#2: uint64 = φ(index_sum#0 <- block@1, index_sum#2 <- block@2, index_sum#2 <- block@3, index_sum#2 <- block@4) (index_sum#2) with index_sum#0 in current definition for 5 blocks -debug: Added index_sum#0 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@8) in block@8: // for_header_0_L59 +debug: Added index_sum#0 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@8) in block@8: // for_header_0_L59 debug: Looking for 'index_sum' in an unsealed block creating an incomplete Phi: block@9: // for_header_1_L59 debug: Created Phi assignment: let index_sum#3: uint64 = undefined while trying to resolve 'index_sum' in block@9: // for_header_1_L59 -debug: Added index_sum#3 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@8, index_sum#3 <- block@9) in block@9: // for_header_1_L59 +debug: Added index_sum#3 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@8, index_sum#3 <- block@9) in block@9: // for_header_1_L59 debug: Looking for 'index_sum' in an unsealed block creating an incomplete Phi: block@10: // for_header_2_L59 debug: Created Phi assignment: let index_sum#4: uint64 = undefined while trying to resolve 'index_sum' in block@10: // for_header_2_L59 -debug: Added index_sum#4 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@8, index_sum#3 <- block@9, index_sum#4 <- block@10) in block@10: // for_header_2_L59 +debug: Added index_sum#4 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@8, index_sum#3 <- block@9, index_sum#4 <- block@10) in block@10: // for_header_2_L59 debug: Looking for 'index_sum' in an unsealed block creating an incomplete Phi: block@11: // for_header_3_L59 debug: Created Phi assignment: let index_sum#5: uint64 = undefined while trying to resolve 'index_sum' in block@11: // for_header_3_L59 -debug: Added index_sum#5 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@8, index_sum#3 <- block@9, index_sum#4 <- block@10, index_sum#5 <- block@11) in block@11: // for_header_3_L59 +debug: Added index_sum#5 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@8, index_sum#3 <- block@9, index_sum#4 <- block@10, index_sum#5 <- block@11) in block@11: // for_header_3_L59 debug: Terminated block@12: // for_body_L59 debug: Sealing block@13: // for_footer_L59 debug: Terminated block@13: // for_footer_L59 debug: Sealing block@9: // for_header_1_L59 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@13) in block@13: // for_footer_L59 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#2: uint64 = Phi(tuple_index%1#5 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@13) (tuple_index%1#2) with tuple_index%1#5 debug: Deleting Phi assignment: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@13) debug: Replaced trivial Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@13) (tuple_index%1#2) with tuple_index%1#5 in current definition for 1 blocks -debug: Added iteration_count#10 to Phi node: let iteration_count#7: uint64 = φ(iteration_count#10 <- block@13) in block@13: // for_footer_L59 +debug: Added iteration_count#10 to Phi node: let iteration_count#7: uint64 = Phi(iteration_count#10 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let iteration_count#7: uint64 = φ(iteration_count#10 <- block@13) (iteration_count#7) with iteration_count#10 debug: Deleting Phi assignment: let iteration_count#7: uint64 = φ(iteration_count#10 <- block@13) debug: Replaced trivial Phi node: let iteration_count#7: uint64 = φ(iteration_count#10 <- block@13) (iteration_count#7) with iteration_count#10 in current definition for 1 blocks -debug: Added item_concat#10 to Phi node: let item_concat#7: bytes = φ(item_concat#10 <- block@13) in block@13: // for_footer_L59 +debug: Added item_concat#10 to Phi node: let item_concat#7: bytes = Phi(item_concat#10 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let item_concat#7: bytes = φ(item_concat#10 <- block@13) (item_concat#7) with item_concat#10 debug: Deleting Phi assignment: let item_concat#7: bytes = φ(item_concat#10 <- block@13) debug: Replaced trivial Phi node: let item_concat#7: bytes = φ(item_concat#10 <- block@13) (item_concat#7) with item_concat#10 in current definition for 1 blocks -debug: Added index_sum#6 to Phi node: let index_sum#3: uint64 = φ(index_sum#6 <- block@13) in block@13: // for_footer_L59 +debug: Added index_sum#6 to Phi node: let index_sum#3: uint64 = Phi(index_sum#6 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let index_sum#3: uint64 = φ(index_sum#6 <- block@13) (index_sum#3) with index_sum#6 debug: Deleting Phi assignment: let index_sum#3: uint64 = φ(index_sum#6 <- block@13) debug: Replaced trivial Phi node: let index_sum#3: uint64 = φ(index_sum#6 <- block@13) (index_sum#3) with index_sum#6 in current definition for 1 blocks debug: Sealing block@10: // for_header_2_L59 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@13) in block@13: // for_footer_L59 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#3: uint64 = Phi(tuple_index%1#5 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@13) (tuple_index%1#3) with tuple_index%1#5 debug: Deleting Phi assignment: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@13) debug: Replaced trivial Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@13) (tuple_index%1#3) with tuple_index%1#5 in current definition for 1 blocks -debug: Added iteration_count#10 to Phi node: let iteration_count#8: uint64 = φ(iteration_count#10 <- block@13) in block@13: // for_footer_L59 +debug: Added iteration_count#10 to Phi node: let iteration_count#8: uint64 = Phi(iteration_count#10 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let iteration_count#8: uint64 = φ(iteration_count#10 <- block@13) (iteration_count#8) with iteration_count#10 debug: Deleting Phi assignment: let iteration_count#8: uint64 = φ(iteration_count#10 <- block@13) debug: Replaced trivial Phi node: let iteration_count#8: uint64 = φ(iteration_count#10 <- block@13) (iteration_count#8) with iteration_count#10 in current definition for 1 blocks -debug: Added item_concat#10 to Phi node: let item_concat#8: bytes = φ(item_concat#10 <- block@13) in block@13: // for_footer_L59 +debug: Added item_concat#10 to Phi node: let item_concat#8: bytes = Phi(item_concat#10 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let item_concat#8: bytes = φ(item_concat#10 <- block@13) (item_concat#8) with item_concat#10 debug: Deleting Phi assignment: let item_concat#8: bytes = φ(item_concat#10 <- block@13) debug: Replaced trivial Phi node: let item_concat#8: bytes = φ(item_concat#10 <- block@13) (item_concat#8) with item_concat#10 in current definition for 1 blocks -debug: Added index_sum#6 to Phi node: let index_sum#4: uint64 = φ(index_sum#6 <- block@13) in block@13: // for_footer_L59 +debug: Added index_sum#6 to Phi node: let index_sum#4: uint64 = Phi(index_sum#6 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let index_sum#4: uint64 = φ(index_sum#6 <- block@13) (index_sum#4) with index_sum#6 debug: Deleting Phi assignment: let index_sum#4: uint64 = φ(index_sum#6 <- block@13) debug: Replaced trivial Phi node: let index_sum#4: uint64 = φ(index_sum#6 <- block@13) (index_sum#4) with index_sum#6 in current definition for 1 blocks debug: Sealing block@11: // for_header_3_L59 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@13) in block@13: // for_footer_L59 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#4: uint64 = Phi(tuple_index%1#5 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@13) (tuple_index%1#4) with tuple_index%1#5 debug: Deleting Phi assignment: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@13) debug: Replaced trivial Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@13) (tuple_index%1#4) with tuple_index%1#5 in current definition for 1 blocks -debug: Added iteration_count#10 to Phi node: let iteration_count#9: uint64 = φ(iteration_count#10 <- block@13) in block@13: // for_footer_L59 +debug: Added iteration_count#10 to Phi node: let iteration_count#9: uint64 = Phi(iteration_count#10 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let iteration_count#9: uint64 = φ(iteration_count#10 <- block@13) (iteration_count#9) with iteration_count#10 debug: Deleting Phi assignment: let iteration_count#9: uint64 = φ(iteration_count#10 <- block@13) debug: Replaced trivial Phi node: let iteration_count#9: uint64 = φ(iteration_count#10 <- block@13) (iteration_count#9) with iteration_count#10 in current definition for 1 blocks -debug: Added item_concat#10 to Phi node: let item_concat#9: bytes = φ(item_concat#10 <- block@13) in block@13: // for_footer_L59 +debug: Added item_concat#10 to Phi node: let item_concat#9: bytes = Phi(item_concat#10 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let item_concat#9: bytes = φ(item_concat#10 <- block@13) (item_concat#9) with item_concat#10 debug: Deleting Phi assignment: let item_concat#9: bytes = φ(item_concat#10 <- block@13) debug: Replaced trivial Phi node: let item_concat#9: bytes = φ(item_concat#10 <- block@13) (item_concat#9) with item_concat#10 in current definition for 1 blocks -debug: Added index_sum#6 to Phi node: let index_sum#5: uint64 = φ(index_sum#6 <- block@13) in block@13: // for_footer_L59 +debug: Added index_sum#6 to Phi node: let index_sum#5: uint64 = Phi(index_sum#6 <- block@13) in block@13: // for_footer_L59 debug: Replacing trivial Phi node: let index_sum#5: uint64 = φ(index_sum#6 <- block@13) (index_sum#5) with index_sum#6 debug: Deleting Phi assignment: let index_sum#5: uint64 = φ(index_sum#6 <- block@13) debug: Replaced trivial Phi node: let index_sum#5: uint64 = φ(index_sum#6 <- block@13) (index_sum#5) with index_sum#6 in current definition for 1 blocks @@ -333,15 +333,15 @@ debug: Sealing block@3: // for_footer_L73 debug: Sealing block@None: // after_for_L73 debug: Terminated block@3: // for_footer_L73 debug: Sealing block@1: // for_header_L73 -debug: Added item_index_internal%1#0 to Phi node: let item_index_internal%1#1: uint64 = φ(item_index_internal%1#0 <- block@0) in block@0: // L68 -debug: Added item_index_internal%1#2 to Phi node: let item_index_internal%1#1: uint64 = φ(item_index_internal%1#0 <- block@0, item_index_internal%1#2 <- block@3) in block@3: // for_footer_L73 -debug: Added iteration_count#0 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@0) in block@0: // L68 -debug: Added iteration_count#2 to Phi node: let iteration_count#1: uint64 = φ(iteration_count#0 <- block@0, iteration_count#2 <- block@3) in block@3: // for_footer_L73 -debug: Added item_concat#0 to Phi node: let item_concat#1: bytes = φ(item_concat#0 <- block@0) in block@0: // L68 -debug: Added item_concat#2 to Phi node: let item_concat#1: bytes = φ(item_concat#0 <- block@0, item_concat#2 <- block@3) in block@3: // for_footer_L73 +debug: Added item_index_internal%1#0 to Phi node: let item_index_internal%1#1: uint64 = Phi(item_index_internal%1#0 <- block@0) in block@0: // L68 +debug: Added item_index_internal%1#2 to Phi node: let item_index_internal%1#1: uint64 = Phi(item_index_internal%1#0 <- block@0, item_index_internal%1#2 <- block@3) in block@3: // for_footer_L73 +debug: Added iteration_count#0 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@0) in block@0: // L68 +debug: Added iteration_count#2 to Phi node: let iteration_count#1: uint64 = Phi(iteration_count#0 <- block@0, iteration_count#2 <- block@3) in block@3: // for_footer_L73 +debug: Added item_concat#0 to Phi node: let item_concat#1: bytes = Phi(item_concat#0 <- block@0) in block@0: // L68 +debug: Added item_concat#2 to Phi node: let item_concat#1: bytes = Phi(item_concat#0 <- block@0, item_concat#2 <- block@3) in block@3: // for_footer_L73 debug: Created Phi assignment: let bytes#1: bytes = undefined while trying to resolve 'bytes' in block@1: // for_header_L73 -debug: Added bytes#0 to Phi node: let bytes#1: bytes = φ(bytes#0 <- block@0) in block@0: // L68 -debug: Added bytes#1 to Phi node: let bytes#1: bytes = φ(bytes#0 <- block@0, bytes#1 <- block@3) in block@3: // for_footer_L73 +debug: Added bytes#0 to Phi node: let bytes#1: bytes = Phi(bytes#0 <- block@0) in block@0: // L68 +debug: Added bytes#1 to Phi node: let bytes#1: bytes = Phi(bytes#0 <- block@0, bytes#1 <- block@3) in block@3: // for_footer_L73 debug: Replacing trivial Phi node: let bytes#1: bytes = φ(bytes#0 <- block@0, bytes#1 <- block@3) (bytes#1) with bytes#0 debug: Deleting Phi assignment: let bytes#1: bytes = φ(bytes#0 <- block@0, bytes#1 <- block@3) debug: Replaced trivial Phi node: let bytes#1: bytes = φ(bytes#0 <- block@0, bytes#1 <- block@3) (bytes#1) with bytes#0 in current definition for 3 blocks @@ -361,20 +361,20 @@ debug: Sealing block@7: // for_footer_L76 debug: Sealing block@None: // after_for_L76 debug: Terminated block@7: // for_footer_L76 debug: Sealing block@5: // for_header_L76 -debug: Added item_index_internal%4#0 to Phi node: let item_index_internal%4#1: uint64 = φ(item_index_internal%4#0 <- block@4) in block@4: // after_for_L73 -debug: Added item_index_internal%4#2 to Phi node: let item_index_internal%4#1: uint64 = φ(item_index_internal%4#0 <- block@4, item_index_internal%4#2 <- block@7) in block@7: // for_footer_L76 -debug: Added iteration_count#1 to Phi node: let iteration_count#3: uint64 = φ(iteration_count#1 <- block@4) in block@4: // after_for_L73 -debug: Added iteration_count#4 to Phi node: let iteration_count#3: uint64 = φ(iteration_count#1 <- block@4, iteration_count#4 <- block@7) in block@7: // for_footer_L76 -debug: Added item_concat#1 to Phi node: let item_concat#3: bytes = φ(item_concat#1 <- block@4) in block@4: // after_for_L73 -debug: Added item_concat#4 to Phi node: let item_concat#3: bytes = φ(item_concat#1 <- block@4, item_concat#4 <- block@7) in block@7: // for_footer_L76 +debug: Added item_index_internal%4#0 to Phi node: let item_index_internal%4#1: uint64 = Phi(item_index_internal%4#0 <- block@4) in block@4: // after_for_L73 +debug: Added item_index_internal%4#2 to Phi node: let item_index_internal%4#1: uint64 = Phi(item_index_internal%4#0 <- block@4, item_index_internal%4#2 <- block@7) in block@7: // for_footer_L76 +debug: Added iteration_count#1 to Phi node: let iteration_count#3: uint64 = Phi(iteration_count#1 <- block@4) in block@4: // after_for_L73 +debug: Added iteration_count#4 to Phi node: let iteration_count#3: uint64 = Phi(iteration_count#1 <- block@4, iteration_count#4 <- block@7) in block@7: // for_footer_L76 +debug: Added item_concat#1 to Phi node: let item_concat#3: bytes = Phi(item_concat#1 <- block@4) in block@4: // after_for_L73 +debug: Added item_concat#4 to Phi node: let item_concat#3: bytes = Phi(item_concat#1 <- block@4, item_concat#4 <- block@7) in block@7: // for_footer_L76 debug: Created Phi assignment: let index_sum#3: uint64 = undefined while trying to resolve 'index_sum' in block@1: // for_header_L73 -debug: Added index_sum#0 to Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0) in block@0: // L68 -debug: Added index_sum#3 to Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) in block@3: // for_footer_L73 +debug: Added index_sum#0 to Phi node: let index_sum#3: uint64 = Phi(index_sum#0 <- block@0) in block@0: // L68 +debug: Added index_sum#3 to Phi node: let index_sum#3: uint64 = Phi(index_sum#0 <- block@0, index_sum#3 <- block@3) in block@3: // for_footer_L73 debug: Replacing trivial Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) (index_sum#3) with index_sum#0 debug: Deleting Phi assignment: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) debug: Replaced trivial Phi node: let index_sum#3: uint64 = φ(index_sum#0 <- block@0, index_sum#3 <- block@3) (index_sum#3) with index_sum#0 in current definition for 3 blocks -debug: Added index_sum#0 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@4) in block@4: // after_for_L73 -debug: Added index_sum#2 to Phi node: let index_sum#1: uint64 = φ(index_sum#0 <- block@4, index_sum#2 <- block@7) in block@7: // for_footer_L76 +debug: Added index_sum#0 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@4) in block@4: // after_for_L73 +debug: Added index_sum#2 to Phi node: let index_sum#1: uint64 = Phi(index_sum#0 <- block@4, index_sum#2 <- block@7) in block@7: // for_footer_L76 debug: Terminated block@8: // after_for_L76 debug: Sealing block@0: // L5 debug: Terminated block@0: // L5 diff --git a/examples/everything/puya.log b/examples/everything/puya.log index 06945210aa..3d6019e6a0 100644 --- a/examples/everything/puya.log +++ b/examples/everything/puya.log @@ -25,14 +25,14 @@ debug: Sealing block@3: // after_if_else_L44 debug: Terminated block@3: // after_if_else_L44 debug: Sealing block@4: // after_if_else_L42 debug: Created Phi assignment: let name#1: bytes = undefined while trying to resolve 'name' in block@4: // after_if_else_L42 -debug: Added name#0 to Phi node: let name#1: bytes = φ(name#0 <- block@0) in block@0: // L40 +debug: Added name#0 to Phi node: let name#1: bytes = Phi(name#0 <- block@0) in block@0: // L40 debug: Created Phi assignment: let name#2: bytes = undefined while trying to resolve 'name' in block@3: // after_if_else_L44 -debug: Added name#0 to Phi node: let name#2: bytes = φ(name#0 <- block@1) in block@1: // if_body_L42 -debug: Added name#0 to Phi node: let name#2: bytes = φ(name#0 <- block@1, name#0 <- block@2) in block@2: // if_body_L44 +debug: Added name#0 to Phi node: let name#2: bytes = Phi(name#0 <- block@1) in block@1: // if_body_L42 +debug: Added name#0 to Phi node: let name#2: bytes = Phi(name#0 <- block@1, name#0 <- block@2) in block@2: // if_body_L44 debug: Replacing trivial Phi node: let name#2: bytes = φ(name#0 <- block@1, name#0 <- block@2) (name#2) with name#0 debug: Deleting Phi assignment: let name#2: bytes = φ(name#0 <- block@1, name#0 <- block@2) debug: Replaced trivial Phi node: let name#2: bytes = φ(name#0 <- block@1, name#0 <- block@2) (name#2) with name#0 in current definition for 1 blocks -debug: Added name#0 to Phi node: let name#1: bytes = φ(name#0 <- block@0, name#0 <- block@3) in block@3: // after_if_else_L44 +debug: Added name#0 to Phi node: let name#1: bytes = Phi(name#0 <- block@0, name#0 <- block@3) in block@3: // after_if_else_L44 debug: Replacing trivial Phi node: let name#1: bytes = φ(name#0 <- block@0, name#0 <- block@3) (name#1) with name#0 debug: Deleting Phi assignment: let name#1: bytes = φ(name#0 <- block@0, name#0 <- block@3) debug: Replaced trivial Phi node: let name#1: bytes = φ(name#0 <- block@0, name#0 <- block@3) (name#1) with name#0 in current definition for 1 blocks diff --git a/examples/less_simple/puya.log b/examples/less_simple/puya.log index 3acd5a6ec5..b52c15b73d 100644 --- a/examples/less_simple/puya.log +++ b/examples/less_simple/puya.log @@ -36,53 +36,53 @@ debug: Sealing block@11: // after_if_else_L19 debug: Terminated block@11: // after_if_else_L19 debug: Sealing block@12: // after_if_else_L16 debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@12: // after_if_else_L16 -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#1 <- block@7) in block@7: // if_body_L16 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#1 <- block@7) in block@7: // if_body_L16 debug: Created Phi assignment: let a#3: uint64 = undefined while trying to resolve 'a' in block@11: // after_if_else_L19 -debug: Added a#1 to Phi node: let a#3: uint64 = φ(a#1 <- block@9) in block@9: // if_body_L19 -debug: Added a#1 to Phi node: let a#3: uint64 = φ(a#1 <- block@9, a#1 <- block@10) in block@10: // else_body_L19 +debug: Added a#1 to Phi node: let a#3: uint64 = Phi(a#1 <- block@9) in block@9: // if_body_L19 +debug: Added a#1 to Phi node: let a#3: uint64 = Phi(a#1 <- block@9, a#1 <- block@10) in block@10: // else_body_L19 debug: Replacing trivial Phi node: let a#3: uint64 = φ(a#1 <- block@9, a#1 <- block@10) (a#3) with a#1 debug: Deleting Phi assignment: let a#3: uint64 = φ(a#1 <- block@9, a#1 <- block@10) debug: Replaced trivial Phi node: let a#3: uint64 = φ(a#1 <- block@9, a#1 <- block@10) (a#3) with a#1 in current definition for 1 blocks -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#1 <- block@7, a#1 <- block@11) in block@11: // after_if_else_L19 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#1 <- block@7, a#1 <- block@11) in block@11: // after_if_else_L19 debug: Replacing trivial Phi node: let a#2: uint64 = φ(a#1 <- block@7, a#1 <- block@11) (a#2) with a#1 debug: Deleting Phi assignment: let a#2: uint64 = φ(a#1 <- block@7, a#1 <- block@11) debug: Replaced trivial Phi node: let a#2: uint64 = φ(a#1 <- block@7, a#1 <- block@11) (a#2) with a#1 in current definition for 1 blocks debug: Terminated block@12: // after_if_else_L16 debug: Sealing block@1: // while_top_L11 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@0) in block@0: // L7 -debug: Added a#1 to Phi node: let a#1: uint64 = φ(a#0 <- block@0, a#1 <- block@3) in block@3: // if_body_L12 -debug: Added a#4 to Phi node: let a#1: uint64 = φ(a#0 <- block@0, a#1 <- block@3, a#4 <- block@12) in block@12: // after_if_else_L16 -debug: Added sum_of_evens#0 to Phi node: let sum_of_evens#1: uint64 = φ(sum_of_evens#0 <- block@0) in block@0: // L7 -debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#1: uint64 = φ(sum_of_evens#0 <- block@0, sum_of_evens#1 <- block@3) in block@3: // if_body_L12 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0) in block@0: // L7 +debug: Added a#1 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0, a#1 <- block@3) in block@3: // if_body_L12 +debug: Added a#4 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0, a#1 <- block@3, a#4 <- block@12) in block@12: // after_if_else_L16 +debug: Added sum_of_evens#0 to Phi node: let sum_of_evens#1: uint64 = Phi(sum_of_evens#0 <- block@0) in block@0: // L7 +debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#1: uint64 = Phi(sum_of_evens#0 <- block@0, sum_of_evens#1 <- block@3) in block@3: // if_body_L12 debug: Created Phi assignment: let sum_of_evens#3: uint64 = undefined while trying to resolve 'sum_of_evens' in block@12: // after_if_else_L16 -debug: Added sum_of_evens#2 to Phi node: let sum_of_evens#3: uint64 = φ(sum_of_evens#2 <- block@7) in block@7: // if_body_L16 +debug: Added sum_of_evens#2 to Phi node: let sum_of_evens#3: uint64 = Phi(sum_of_evens#2 <- block@7) in block@7: // if_body_L16 debug: Created Phi assignment: let sum_of_evens#4: uint64 = undefined while trying to resolve 'sum_of_evens' in block@11: // after_if_else_L19 -debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#4: uint64 = φ(sum_of_evens#1 <- block@9) in block@9: // if_body_L19 -debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#4: uint64 = φ(sum_of_evens#1 <- block@9, sum_of_evens#1 <- block@10) in block@10: // else_body_L19 +debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#4: uint64 = Phi(sum_of_evens#1 <- block@9) in block@9: // if_body_L19 +debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#4: uint64 = Phi(sum_of_evens#1 <- block@9, sum_of_evens#1 <- block@10) in block@10: // else_body_L19 debug: Replacing trivial Phi node: let sum_of_evens#4: uint64 = φ(sum_of_evens#1 <- block@9, sum_of_evens#1 <- block@10) (sum_of_evens#4) with sum_of_evens#1 debug: Deleting Phi assignment: let sum_of_evens#4: uint64 = φ(sum_of_evens#1 <- block@9, sum_of_evens#1 <- block@10) debug: Replaced trivial Phi node: let sum_of_evens#4: uint64 = φ(sum_of_evens#1 <- block@9, sum_of_evens#1 <- block@10) (sum_of_evens#4) with sum_of_evens#1 in current definition for 1 blocks -debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#3: uint64 = φ(sum_of_evens#2 <- block@7, sum_of_evens#1 <- block@11) in block@11: // after_if_else_L19 -debug: Added sum_of_evens#3 to Phi node: let sum_of_evens#1: uint64 = φ(sum_of_evens#0 <- block@0, sum_of_evens#1 <- block@3, sum_of_evens#3 <- block@12) in block@12: // after_if_else_L16 -debug: Added product_of_odds#0 to Phi node: let product_of_odds#1: uint64 = φ(product_of_odds#0 <- block@0) in block@0: // L7 -debug: Added product_of_odds#1 to Phi node: let product_of_odds#1: uint64 = φ(product_of_odds#0 <- block@0, product_of_odds#1 <- block@3) in block@3: // if_body_L12 +debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#3: uint64 = Phi(sum_of_evens#2 <- block@7, sum_of_evens#1 <- block@11) in block@11: // after_if_else_L19 +debug: Added sum_of_evens#3 to Phi node: let sum_of_evens#1: uint64 = Phi(sum_of_evens#0 <- block@0, sum_of_evens#1 <- block@3, sum_of_evens#3 <- block@12) in block@12: // after_if_else_L16 +debug: Added product_of_odds#0 to Phi node: let product_of_odds#1: uint64 = Phi(product_of_odds#0 <- block@0) in block@0: // L7 +debug: Added product_of_odds#1 to Phi node: let product_of_odds#1: uint64 = Phi(product_of_odds#0 <- block@0, product_of_odds#1 <- block@3) in block@3: // if_body_L12 debug: Created Phi assignment: let product_of_odds#4: uint64 = undefined while trying to resolve 'product_of_odds' in block@12: // after_if_else_L16 -debug: Added product_of_odds#1 to Phi node: let product_of_odds#4: uint64 = φ(product_of_odds#1 <- block@7) in block@7: // if_body_L16 +debug: Added product_of_odds#1 to Phi node: let product_of_odds#4: uint64 = Phi(product_of_odds#1 <- block@7) in block@7: // if_body_L16 debug: Created Phi assignment: let product_of_odds#5: uint64 = undefined while trying to resolve 'product_of_odds' in block@11: // after_if_else_L19 -debug: Added product_of_odds#2 to Phi node: let product_of_odds#5: uint64 = φ(product_of_odds#2 <- block@9) in block@9: // if_body_L19 -debug: Added product_of_odds#3 to Phi node: let product_of_odds#5: uint64 = φ(product_of_odds#2 <- block@9, product_of_odds#3 <- block@10) in block@10: // else_body_L19 -debug: Added product_of_odds#5 to Phi node: let product_of_odds#4: uint64 = φ(product_of_odds#1 <- block@7, product_of_odds#5 <- block@11) in block@11: // after_if_else_L19 -debug: Added product_of_odds#4 to Phi node: let product_of_odds#1: uint64 = φ(product_of_odds#0 <- block@0, product_of_odds#1 <- block@3, product_of_odds#4 <- block@12) in block@12: // after_if_else_L16 +debug: Added product_of_odds#2 to Phi node: let product_of_odds#5: uint64 = Phi(product_of_odds#2 <- block@9) in block@9: // if_body_L19 +debug: Added product_of_odds#3 to Phi node: let product_of_odds#5: uint64 = Phi(product_of_odds#2 <- block@9, product_of_odds#3 <- block@10) in block@10: // else_body_L19 +debug: Added product_of_odds#5 to Phi node: let product_of_odds#4: uint64 = Phi(product_of_odds#1 <- block@7, product_of_odds#5 <- block@11) in block@11: // after_if_else_L19 +debug: Added product_of_odds#4 to Phi node: let product_of_odds#1: uint64 = Phi(product_of_odds#0 <- block@0, product_of_odds#1 <- block@3, product_of_odds#4 <- block@12) in block@12: // after_if_else_L16 debug: Sealing block@None: // after_while_L11 debug: Created Phi assignment: let product_of_odds#6: uint64 = undefined while trying to resolve 'product_of_odds' in block@13: // after_while_L11 -debug: Added product_of_odds#1 to Phi node: let product_of_odds#6: uint64 = φ(product_of_odds#1 <- block@1) in block@1: // while_top_L11 -debug: Added product_of_odds#1 to Phi node: let product_of_odds#6: uint64 = φ(product_of_odds#1 <- block@1, product_of_odds#1 <- block@5) in block@5: // if_body_L14 +debug: Added product_of_odds#1 to Phi node: let product_of_odds#6: uint64 = Phi(product_of_odds#1 <- block@1) in block@1: // while_top_L11 +debug: Added product_of_odds#1 to Phi node: let product_of_odds#6: uint64 = Phi(product_of_odds#1 <- block@1, product_of_odds#1 <- block@5) in block@5: // if_body_L14 debug: Replacing trivial Phi node: let product_of_odds#6: uint64 = φ(product_of_odds#1 <- block@1, product_of_odds#1 <- block@5) (product_of_odds#6) with product_of_odds#1 debug: Deleting Phi assignment: let product_of_odds#6: uint64 = φ(product_of_odds#1 <- block@1, product_of_odds#1 <- block@5) debug: Replaced trivial Phi node: let product_of_odds#6: uint64 = φ(product_of_odds#1 <- block@1, product_of_odds#1 <- block@5) (product_of_odds#6) with product_of_odds#1 in current definition for 1 blocks debug: Created Phi assignment: let sum_of_evens#5: uint64 = undefined while trying to resolve 'sum_of_evens' in block@13: // after_while_L11 -debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#5: uint64 = φ(sum_of_evens#1 <- block@1) in block@1: // while_top_L11 -debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#5: uint64 = φ(sum_of_evens#1 <- block@1, sum_of_evens#1 <- block@5) in block@5: // if_body_L14 +debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#5: uint64 = Phi(sum_of_evens#1 <- block@1) in block@1: // while_top_L11 +debug: Added sum_of_evens#1 to Phi node: let sum_of_evens#5: uint64 = Phi(sum_of_evens#1 <- block@1, sum_of_evens#1 <- block@5) in block@5: // if_body_L14 debug: Replacing trivial Phi node: let sum_of_evens#5: uint64 = φ(sum_of_evens#1 <- block@1, sum_of_evens#1 <- block@5) (sum_of_evens#5) with sum_of_evens#1 debug: Deleting Phi assignment: let sum_of_evens#5: uint64 = φ(sum_of_evens#1 <- block@1, sum_of_evens#1 <- block@5) debug: Replaced trivial Phi node: let sum_of_evens#5: uint64 = φ(sum_of_evens#1 <- block@1, sum_of_evens#1 <- block@5) (sum_of_evens#5) with sum_of_evens#1 in current definition for 1 blocks @@ -101,8 +101,8 @@ debug: Created Phi assignment: let sum_of_squares#1: uint64 = undefined while tr debug: Terminated block@3: // if_body_L30 debug: Sealing block@4: // after_if_else_L30 debug: Created Phi assignment: let sum_of_squares#3: uint64 = undefined while trying to resolve 'sum_of_squares' in block@4: // after_if_else_L30 -debug: Added sum_of_squares#1 to Phi node: let sum_of_squares#3: uint64 = φ(sum_of_squares#1 <- block@2) in block@2: // for_body_L28 -debug: Added sum_of_squares#2 to Phi node: let sum_of_squares#3: uint64 = φ(sum_of_squares#1 <- block@2, sum_of_squares#2 <- block@3) in block@3: // if_body_L30 +debug: Added sum_of_squares#1 to Phi node: let sum_of_squares#3: uint64 = Phi(sum_of_squares#1 <- block@2) in block@2: // for_body_L28 +debug: Added sum_of_squares#2 to Phi node: let sum_of_squares#3: uint64 = Phi(sum_of_squares#1 <- block@2, sum_of_squares#2 <- block@3) in block@3: // if_body_L30 debug: Terminated block@4: // after_if_else_L30 debug: Sealing block@None: // if_body_L32 debug: Sealing block@None: // else_body_L32 @@ -112,20 +112,20 @@ debug: Terminated block@6: // after_if_else_L32 debug: Sealing block@7: // for_footer_L28 debug: Sealing block@None: // after_for_L28 debug: Created Phi assignment: let range_item%0#2: uint64 = undefined while trying to resolve 'range_item%0' in block@4: // after_if_else_L30 -debug: Added range_item%0#1 to Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2) in block@2: // for_body_L28 -debug: Added range_item%0#1 to Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#1 <- block@3) in block@3: // if_body_L30 +debug: Added range_item%0#1 to Phi node: let range_item%0#2: uint64 = Phi(range_item%0#1 <- block@2) in block@2: // for_body_L28 +debug: Added range_item%0#1 to Phi node: let range_item%0#2: uint64 = Phi(range_item%0#1 <- block@2, range_item%0#1 <- block@3) in block@3: // if_body_L30 debug: Replacing trivial Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#1 <- block@3) (range_item%0#2) with range_item%0#1 debug: Deleting Phi assignment: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#1 <- block@3) debug: Replaced trivial Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#1 <- block@3) (range_item%0#2) with range_item%0#1 in current definition for 1 blocks debug: Terminated block@7: // for_footer_L28 debug: Sealing block@1: // for_header_L28 -debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0) in block@0: // L26 -debug: Added range_item%0#3 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0, range_item%0#3 <- block@7) in block@7: // for_footer_L28 -debug: Added sum_of_squares#0 to Phi node: let sum_of_squares#1: uint64 = φ(sum_of_squares#0 <- block@0) in block@0: // L26 -debug: Added sum_of_squares#3 to Phi node: let sum_of_squares#1: uint64 = φ(sum_of_squares#0 <- block@0, sum_of_squares#3 <- block@7) in block@7: // for_footer_L28 +debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0) in block@0: // L26 +debug: Added range_item%0#3 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0, range_item%0#3 <- block@7) in block@7: // for_footer_L28 +debug: Added sum_of_squares#0 to Phi node: let sum_of_squares#1: uint64 = Phi(sum_of_squares#0 <- block@0) in block@0: // L26 +debug: Added sum_of_squares#3 to Phi node: let sum_of_squares#1: uint64 = Phi(sum_of_squares#0 <- block@0, sum_of_squares#3 <- block@7) in block@7: // for_footer_L28 debug: Created Phi assignment: let sum_of_squares#4: uint64 = undefined while trying to resolve 'sum_of_squares' in block@8: // after_for_L28 -debug: Added sum_of_squares#1 to Phi node: let sum_of_squares#4: uint64 = φ(sum_of_squares#1 <- block@1) in block@1: // for_header_L28 -debug: Added sum_of_squares#3 to Phi node: let sum_of_squares#4: uint64 = φ(sum_of_squares#1 <- block@1, sum_of_squares#3 <- block@5) in block@5: // if_body_L32 +debug: Added sum_of_squares#1 to Phi node: let sum_of_squares#4: uint64 = Phi(sum_of_squares#1 <- block@1) in block@1: // for_header_L28 +debug: Added sum_of_squares#3 to Phi node: let sum_of_squares#4: uint64 = Phi(sum_of_squares#1 <- block@1, sum_of_squares#3 <- block@5) in block@5: // if_body_L32 debug: Terminated block@8: // after_for_L28 debug: Output IR to /examples/less_simple/out/contract_MyContract.ssa.ir info: Optimizing examples.less_simple.contract.MyContract at level 1 diff --git a/examples/local_storage/puya.log b/examples/local_storage/puya.log index 771360df87..94868b8e77 100644 --- a/examples/local_storage/puya.log +++ b/examples/local_storage/puya.log @@ -20,8 +20,8 @@ debug: Terminated block@1: // ternary_true_L59 debug: Terminated block@2: // ternary_false_L59 debug: Sealing block@3: // ternary_merge_L59 debug: Created Phi assignment: let ternary_result%1#2: bytes = undefined while trying to resolve 'ternary_result%1' in block@3: // ternary_merge_L59 -debug: Added ternary_result%1#0 to Phi node: let ternary_result%1#2: bytes = φ(ternary_result%1#0 <- block@1) in block@1: // ternary_true_L59 -debug: Added ternary_result%1#1 to Phi node: let ternary_result%1#2: bytes = φ(ternary_result%1#0 <- block@1, ternary_result%1#1 <- block@2) in block@2: // ternary_false_L59 +debug: Added ternary_result%1#0 to Phi node: let ternary_result%1#2: bytes = Phi(ternary_result%1#0 <- block@1) in block@1: // ternary_true_L59 +debug: Added ternary_result%1#1 to Phi node: let ternary_result%1#2: bytes = Phi(ternary_result%1#0 <- block@1, ternary_result%1#1 <- block@2) in block@2: // ternary_false_L59 debug: Terminated block@3: // ternary_merge_L59 debug: Sealing block@0: // L15 debug: Terminated block@0: // L15 @@ -104,8 +104,8 @@ debug: Terminated block@1: // ternary_true_L52 debug: Terminated block@2: // ternary_false_L52 debug: Sealing block@3: // ternary_merge_L52 debug: Created Phi assignment: let ternary_result%1#2: bytes = undefined while trying to resolve 'ternary_result%1' in block@3: // ternary_merge_L52 -debug: Added ternary_result%1#0 to Phi node: let ternary_result%1#2: bytes = φ(ternary_result%1#0 <- block@1) in block@1: // ternary_true_L52 -debug: Added ternary_result%1#1 to Phi node: let ternary_result%1#2: bytes = φ(ternary_result%1#0 <- block@1, ternary_result%1#1 <- block@2) in block@2: // ternary_false_L52 +debug: Added ternary_result%1#0 to Phi node: let ternary_result%1#2: bytes = Phi(ternary_result%1#0 <- block@1) in block@1: // ternary_true_L52 +debug: Added ternary_result%1#1 to Phi node: let ternary_result%1#2: bytes = Phi(ternary_result%1#0 <- block@1, ternary_result%1#1 <- block@2) in block@2: // ternary_false_L52 debug: Terminated block@3: // ternary_merge_L52 debug: Sealing block@0: // L5 debug: Terminated block@0: // L5 diff --git a/examples/nested_loops/puya.log b/examples/nested_loops/puya.log index c8c87cf258..ef09f6fb7e 100644 --- a/examples/nested_loops/puya.log +++ b/examples/nested_loops/puya.log @@ -61,42 +61,42 @@ debug: Sealing block@13: // for_footer_L16 debug: Sealing block@None: // after_for_L16 debug: Terminated block@13: // for_footer_L16 debug: Sealing block@11: // for_header_L16 -debug: Added range_item%10#0 to Phi node: let range_item%10#1: uint64 = φ(range_item%10#0 <- block@10) in block@10: // for_body_L15 -debug: Added range_item%10#2 to Phi node: let range_item%10#1: uint64 = φ(range_item%10#0 <- block@10, range_item%10#2 <- block@13) in block@13: // for_footer_L16 +debug: Added range_item%10#0 to Phi node: let range_item%10#1: uint64 = Phi(range_item%10#0 <- block@10) in block@10: // for_body_L15 +debug: Added range_item%10#2 to Phi node: let range_item%10#1: uint64 = Phi(range_item%10#0 <- block@10, range_item%10#2 <- block@13) in block@13: // for_footer_L16 debug: Looking for 'x' in an unsealed block creating an incomplete Phi: block@9: // for_header_L15 debug: Created Phi assignment: let x#3: uint64 = undefined while trying to resolve 'x' in block@9: // for_header_L15 -debug: Added x#3 to Phi node: let x#1: uint64 = φ(x#3 <- block@10) in block@10: // for_body_L15 -debug: Added x#2 to Phi node: let x#1: uint64 = φ(x#3 <- block@10, x#2 <- block@13) in block@13: // for_footer_L16 +debug: Added x#3 to Phi node: let x#1: uint64 = Phi(x#3 <- block@10) in block@10: // for_body_L15 +debug: Added x#2 to Phi node: let x#1: uint64 = Phi(x#3 <- block@10, x#2 <- block@13) in block@13: // for_footer_L16 debug: Looking for 'a' in an unsealed block creating an incomplete Phi: block@9: // for_header_L15 debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@9: // for_header_L15 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#2 <- block@10) in block@10: // for_body_L15 -debug: Added a#1 to Phi node: let a#1: uint64 = φ(a#2 <- block@10, a#1 <- block@13) in block@13: // for_footer_L16 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#2 <- block@10) in block@10: // for_body_L15 +debug: Added a#1 to Phi node: let a#1: uint64 = Phi(a#2 <- block@10, a#1 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let a#1: uint64 = φ(a#2 <- block@10, a#1 <- block@13) (a#1) with a#2 debug: Deleting Phi assignment: let a#1: uint64 = φ(a#2 <- block@10, a#1 <- block@13) debug: Replaced trivial Phi node: let a#1: uint64 = φ(a#2 <- block@10, a#1 <- block@13) (a#1) with a#2 in current definition for 3 blocks debug: Looking for 'b' in an unsealed block creating an incomplete Phi: block@9: // for_header_L15 debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@9: // for_header_L15 -debug: Added b#2 to Phi node: let b#1: uint64 = φ(b#2 <- block@10) in block@10: // for_body_L15 -debug: Added b#1 to Phi node: let b#1: uint64 = φ(b#2 <- block@10, b#1 <- block@13) in block@13: // for_footer_L16 +debug: Added b#2 to Phi node: let b#1: uint64 = Phi(b#2 <- block@10) in block@10: // for_body_L15 +debug: Added b#1 to Phi node: let b#1: uint64 = Phi(b#2 <- block@10, b#1 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let b#1: uint64 = φ(b#2 <- block@10, b#1 <- block@13) (b#1) with b#2 debug: Deleting Phi assignment: let b#1: uint64 = φ(b#2 <- block@10, b#1 <- block@13) debug: Replaced trivial Phi node: let b#1: uint64 = φ(b#2 <- block@10, b#1 <- block@13) (b#1) with b#2 in current definition for 3 blocks debug: Looking for 'c' in an unsealed block creating an incomplete Phi: block@9: // for_header_L15 debug: Created Phi assignment: let c#2: uint64 = undefined while trying to resolve 'c' in block@9: // for_header_L15 -debug: Added c#2 to Phi node: let c#1: uint64 = φ(c#2 <- block@10) in block@10: // for_body_L15 -debug: Added c#1 to Phi node: let c#1: uint64 = φ(c#2 <- block@10, c#1 <- block@13) in block@13: // for_footer_L16 +debug: Added c#2 to Phi node: let c#1: uint64 = Phi(c#2 <- block@10) in block@10: // for_body_L15 +debug: Added c#1 to Phi node: let c#1: uint64 = Phi(c#2 <- block@10, c#1 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let c#1: uint64 = φ(c#2 <- block@10, c#1 <- block@13) (c#1) with c#2 debug: Deleting Phi assignment: let c#1: uint64 = φ(c#2 <- block@10, c#1 <- block@13) debug: Replaced trivial Phi node: let c#1: uint64 = φ(c#2 <- block@10, c#1 <- block@13) (c#1) with c#2 in current definition for 3 blocks debug: Looking for 'd' in an unsealed block creating an incomplete Phi: block@9: // for_header_L15 debug: Created Phi assignment: let d#2: uint64 = undefined while trying to resolve 'd' in block@9: // for_header_L15 -debug: Added d#2 to Phi node: let d#1: uint64 = φ(d#2 <- block@10) in block@10: // for_body_L15 -debug: Added d#1 to Phi node: let d#1: uint64 = φ(d#2 <- block@10, d#1 <- block@13) in block@13: // for_footer_L16 +debug: Added d#2 to Phi node: let d#1: uint64 = Phi(d#2 <- block@10) in block@10: // for_body_L15 +debug: Added d#1 to Phi node: let d#1: uint64 = Phi(d#2 <- block@10, d#1 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let d#1: uint64 = φ(d#2 <- block@10, d#1 <- block@13) (d#1) with d#2 debug: Deleting Phi assignment: let d#1: uint64 = φ(d#2 <- block@10, d#1 <- block@13) debug: Replaced trivial Phi node: let d#1: uint64 = φ(d#2 <- block@10, d#1 <- block@13) (d#1) with d#2 in current definition for 3 blocks -debug: Added e#0 to Phi node: let e#1: uint64 = φ(e#0 <- block@10) in block@10: // for_body_L15 -debug: Added e#1 to Phi node: let e#1: uint64 = φ(e#0 <- block@10, e#1 <- block@13) in block@13: // for_footer_L16 +debug: Added e#0 to Phi node: let e#1: uint64 = Phi(e#0 <- block@10) in block@10: // for_body_L15 +debug: Added e#1 to Phi node: let e#1: uint64 = Phi(e#0 <- block@10, e#1 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let e#1: uint64 = φ(e#0 <- block@10, e#1 <- block@13) (e#1) with e#0 debug: Deleting Phi assignment: let e#1: uint64 = φ(e#0 <- block@10, e#1 <- block@13) debug: Replaced trivial Phi node: let e#1: uint64 = φ(e#0 <- block@10, e#1 <- block@13) (e#1) with e#0 in current definition for 3 blocks @@ -104,53 +104,53 @@ debug: Terminated block@14: // after_for_L16 debug: Sealing block@15: // for_footer_L15 debug: Sealing block@None: // after_for_L15 debug: Created Phi assignment: let range_item%8#2: uint64 = undefined while trying to resolve 'range_item%8' in block@11: // for_header_L16 -debug: Added range_item%8#1 to Phi node: let range_item%8#2: uint64 = φ(range_item%8#1 <- block@10) in block@10: // for_body_L15 -debug: Added range_item%8#2 to Phi node: let range_item%8#2: uint64 = φ(range_item%8#1 <- block@10, range_item%8#2 <- block@13) in block@13: // for_footer_L16 +debug: Added range_item%8#1 to Phi node: let range_item%8#2: uint64 = Phi(range_item%8#1 <- block@10) in block@10: // for_body_L15 +debug: Added range_item%8#2 to Phi node: let range_item%8#2: uint64 = Phi(range_item%8#1 <- block@10, range_item%8#2 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let range_item%8#2: uint64 = φ(range_item%8#1 <- block@10, range_item%8#2 <- block@13) (range_item%8#2) with range_item%8#1 debug: Deleting Phi assignment: let range_item%8#2: uint64 = φ(range_item%8#1 <- block@10, range_item%8#2 <- block@13) debug: Replaced trivial Phi node: let range_item%8#2: uint64 = φ(range_item%8#1 <- block@10, range_item%8#2 <- block@13) (range_item%8#2) with range_item%8#1 in current definition for 3 blocks debug: Terminated block@15: // for_footer_L15 debug: Sealing block@9: // for_header_L15 -debug: Added range_item%8#0 to Phi node: let range_item%8#1: uint64 = φ(range_item%8#0 <- block@8) in block@8: // for_body_L14 -debug: Added range_item%8#3 to Phi node: let range_item%8#1: uint64 = φ(range_item%8#0 <- block@8, range_item%8#3 <- block@15) in block@15: // for_footer_L15 -debug: Added n#4 to Phi node: let n#5: uint64 = φ(n#4 <- block@8) in block@8: // for_body_L14 +debug: Added range_item%8#0 to Phi node: let range_item%8#1: uint64 = Phi(range_item%8#0 <- block@8) in block@8: // for_body_L14 +debug: Added range_item%8#3 to Phi node: let range_item%8#1: uint64 = Phi(range_item%8#0 <- block@8, range_item%8#3 <- block@15) in block@15: // for_footer_L15 +debug: Added n#4 to Phi node: let n#5: uint64 = Phi(n#4 <- block@8) in block@8: // for_body_L14 debug: Created Phi assignment: let n#6: uint64 = undefined while trying to resolve 'n' in block@11: // for_header_L16 -debug: Added n#5 to Phi node: let n#6: uint64 = φ(n#5 <- block@10) in block@10: // for_body_L15 -debug: Added n#6 to Phi node: let n#6: uint64 = φ(n#5 <- block@10, n#6 <- block@13) in block@13: // for_footer_L16 +debug: Added n#5 to Phi node: let n#6: uint64 = Phi(n#5 <- block@10) in block@10: // for_body_L15 +debug: Added n#6 to Phi node: let n#6: uint64 = Phi(n#5 <- block@10, n#6 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let n#6: uint64 = φ(n#5 <- block@10, n#6 <- block@13) (n#6) with n#5 debug: Deleting Phi assignment: let n#6: uint64 = φ(n#5 <- block@10, n#6 <- block@13) debug: Replaced trivial Phi node: let n#6: uint64 = φ(n#5 <- block@10, n#6 <- block@13) (n#6) with n#5 in current definition for 3 blocks -debug: Added n#5 to Phi node: let n#5: uint64 = φ(n#4 <- block@8, n#5 <- block@15) in block@15: // for_footer_L15 +debug: Added n#5 to Phi node: let n#5: uint64 = Phi(n#4 <- block@8, n#5 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let n#5: uint64 = φ(n#4 <- block@8, n#5 <- block@15) (n#5) with n#4 debug: Deleting Phi assignment: let n#5: uint64 = φ(n#4 <- block@8, n#5 <- block@15) debug: Replaced trivial Phi node: let n#5: uint64 = φ(n#4 <- block@8, n#5 <- block@15) (n#5) with n#4 in current definition for 7 blocks debug: Looking for 'x' in an unsealed block creating an incomplete Phi: block@7: // for_header_L14 debug: Created Phi assignment: let x#4: uint64 = undefined while trying to resolve 'x' in block@7: // for_header_L14 -debug: Added x#4 to Phi node: let x#3: uint64 = φ(x#4 <- block@8) in block@8: // for_body_L14 -debug: Added x#1 to Phi node: let x#3: uint64 = φ(x#4 <- block@8, x#1 <- block@15) in block@15: // for_footer_L15 +debug: Added x#4 to Phi node: let x#3: uint64 = Phi(x#4 <- block@8) in block@8: // for_body_L14 +debug: Added x#1 to Phi node: let x#3: uint64 = Phi(x#4 <- block@8, x#1 <- block@15) in block@15: // for_footer_L15 debug: Looking for 'a' in an unsealed block creating an incomplete Phi: block@7: // for_header_L14 debug: Created Phi assignment: let a#3: uint64 = undefined while trying to resolve 'a' in block@7: // for_header_L14 -debug: Added a#3 to Phi node: let a#2: uint64 = φ(a#3 <- block@8) in block@8: // for_body_L14 -debug: Added a#2 to Phi node: let a#2: uint64 = φ(a#3 <- block@8, a#2 <- block@15) in block@15: // for_footer_L15 +debug: Added a#3 to Phi node: let a#2: uint64 = Phi(a#3 <- block@8) in block@8: // for_body_L14 +debug: Added a#2 to Phi node: let a#2: uint64 = Phi(a#3 <- block@8, a#2 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let a#2: uint64 = φ(a#3 <- block@8, a#2 <- block@15) (a#2) with a#3 debug: Deleting Phi assignment: let a#2: uint64 = φ(a#3 <- block@8, a#2 <- block@15) debug: Replaced trivial Phi node: let a#2: uint64 = φ(a#3 <- block@8, a#2 <- block@15) (a#2) with a#3 in current definition for 7 blocks debug: Looking for 'b' in an unsealed block creating an incomplete Phi: block@7: // for_header_L14 debug: Created Phi assignment: let b#3: uint64 = undefined while trying to resolve 'b' in block@7: // for_header_L14 -debug: Added b#3 to Phi node: let b#2: uint64 = φ(b#3 <- block@8) in block@8: // for_body_L14 -debug: Added b#2 to Phi node: let b#2: uint64 = φ(b#3 <- block@8, b#2 <- block@15) in block@15: // for_footer_L15 +debug: Added b#3 to Phi node: let b#2: uint64 = Phi(b#3 <- block@8) in block@8: // for_body_L14 +debug: Added b#2 to Phi node: let b#2: uint64 = Phi(b#3 <- block@8, b#2 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let b#2: uint64 = φ(b#3 <- block@8, b#2 <- block@15) (b#2) with b#3 debug: Deleting Phi assignment: let b#2: uint64 = φ(b#3 <- block@8, b#2 <- block@15) debug: Replaced trivial Phi node: let b#2: uint64 = φ(b#3 <- block@8, b#2 <- block@15) (b#2) with b#3 in current definition for 7 blocks debug: Looking for 'c' in an unsealed block creating an incomplete Phi: block@7: // for_header_L14 debug: Created Phi assignment: let c#3: uint64 = undefined while trying to resolve 'c' in block@7: // for_header_L14 -debug: Added c#3 to Phi node: let c#2: uint64 = φ(c#3 <- block@8) in block@8: // for_body_L14 -debug: Added c#2 to Phi node: let c#2: uint64 = φ(c#3 <- block@8, c#2 <- block@15) in block@15: // for_footer_L15 +debug: Added c#3 to Phi node: let c#2: uint64 = Phi(c#3 <- block@8) in block@8: // for_body_L14 +debug: Added c#2 to Phi node: let c#2: uint64 = Phi(c#3 <- block@8, c#2 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let c#2: uint64 = φ(c#3 <- block@8, c#2 <- block@15) (c#2) with c#3 debug: Deleting Phi assignment: let c#2: uint64 = φ(c#3 <- block@8, c#2 <- block@15) debug: Replaced trivial Phi node: let c#2: uint64 = φ(c#3 <- block@8, c#2 <- block@15) (c#2) with c#3 in current definition for 7 blocks -debug: Added d#0 to Phi node: let d#2: uint64 = φ(d#0 <- block@8) in block@8: // for_body_L14 -debug: Added d#2 to Phi node: let d#2: uint64 = φ(d#0 <- block@8, d#2 <- block@15) in block@15: // for_footer_L15 +debug: Added d#0 to Phi node: let d#2: uint64 = Phi(d#0 <- block@8) in block@8: // for_body_L14 +debug: Added d#2 to Phi node: let d#2: uint64 = Phi(d#0 <- block@8, d#2 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let d#2: uint64 = φ(d#0 <- block@8, d#2 <- block@15) (d#2) with d#0 debug: Deleting Phi assignment: let d#2: uint64 = φ(d#0 <- block@8, d#2 <- block@15) debug: Replaced trivial Phi node: let d#2: uint64 = φ(d#0 <- block@8, d#2 <- block@15) (d#2) with d#0 in current definition for 7 blocks @@ -158,46 +158,46 @@ debug: Terminated block@16: // after_for_L15 debug: Sealing block@17: // for_footer_L14 debug: Sealing block@None: // after_for_L14 debug: Created Phi assignment: let range_item%6#2: uint64 = undefined while trying to resolve 'range_item%6' in block@9: // for_header_L15 -debug: Added range_item%6#1 to Phi node: let range_item%6#2: uint64 = φ(range_item%6#1 <- block@8) in block@8: // for_body_L14 +debug: Added range_item%6#1 to Phi node: let range_item%6#2: uint64 = Phi(range_item%6#1 <- block@8) in block@8: // for_body_L14 debug: Created Phi assignment: let range_item%6#3: uint64 = undefined while trying to resolve 'range_item%6' in block@11: // for_header_L16 -debug: Added range_item%6#2 to Phi node: let range_item%6#3: uint64 = φ(range_item%6#2 <- block@10) in block@10: // for_body_L15 -debug: Added range_item%6#3 to Phi node: let range_item%6#3: uint64 = φ(range_item%6#2 <- block@10, range_item%6#3 <- block@13) in block@13: // for_footer_L16 +debug: Added range_item%6#2 to Phi node: let range_item%6#3: uint64 = Phi(range_item%6#2 <- block@10) in block@10: // for_body_L15 +debug: Added range_item%6#3 to Phi node: let range_item%6#3: uint64 = Phi(range_item%6#2 <- block@10, range_item%6#3 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let range_item%6#3: uint64 = φ(range_item%6#2 <- block@10, range_item%6#3 <- block@13) (range_item%6#3) with range_item%6#2 debug: Deleting Phi assignment: let range_item%6#3: uint64 = φ(range_item%6#2 <- block@10, range_item%6#3 <- block@13) debug: Replaced trivial Phi node: let range_item%6#3: uint64 = φ(range_item%6#2 <- block@10, range_item%6#3 <- block@13) (range_item%6#3) with range_item%6#2 in current definition for 3 blocks -debug: Added range_item%6#2 to Phi node: let range_item%6#2: uint64 = φ(range_item%6#1 <- block@8, range_item%6#2 <- block@15) in block@15: // for_footer_L15 +debug: Added range_item%6#2 to Phi node: let range_item%6#2: uint64 = Phi(range_item%6#1 <- block@8, range_item%6#2 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let range_item%6#2: uint64 = φ(range_item%6#1 <- block@8, range_item%6#2 <- block@15) (range_item%6#2) with range_item%6#1 debug: Deleting Phi assignment: let range_item%6#2: uint64 = φ(range_item%6#1 <- block@8, range_item%6#2 <- block@15) debug: Replaced trivial Phi node: let range_item%6#2: uint64 = φ(range_item%6#1 <- block@8, range_item%6#2 <- block@15) (range_item%6#2) with range_item%6#1 in current definition for 7 blocks debug: Terminated block@17: // for_footer_L14 debug: Sealing block@7: // for_header_L14 -debug: Added range_item%6#0 to Phi node: let range_item%6#1: uint64 = φ(range_item%6#0 <- block@6) in block@6: // for_body_L13 -debug: Added range_item%6#4 to Phi node: let range_item%6#1: uint64 = φ(range_item%6#0 <- block@6, range_item%6#4 <- block@17) in block@17: // for_footer_L14 -debug: Added n#3 to Phi node: let n#4: uint64 = φ(n#3 <- block@6) in block@6: // for_body_L13 -debug: Added n#4 to Phi node: let n#4: uint64 = φ(n#3 <- block@6, n#4 <- block@17) in block@17: // for_footer_L14 +debug: Added range_item%6#0 to Phi node: let range_item%6#1: uint64 = Phi(range_item%6#0 <- block@6) in block@6: // for_body_L13 +debug: Added range_item%6#4 to Phi node: let range_item%6#1: uint64 = Phi(range_item%6#0 <- block@6, range_item%6#4 <- block@17) in block@17: // for_footer_L14 +debug: Added n#3 to Phi node: let n#4: uint64 = Phi(n#3 <- block@6) in block@6: // for_body_L13 +debug: Added n#4 to Phi node: let n#4: uint64 = Phi(n#3 <- block@6, n#4 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let n#4: uint64 = φ(n#3 <- block@6, n#4 <- block@17) (n#4) with n#3 debug: Deleting Phi assignment: let n#4: uint64 = φ(n#3 <- block@6, n#4 <- block@17) debug: Replaced trivial Phi node: let n#4: uint64 = φ(n#3 <- block@6, n#4 <- block@17) (n#4) with n#3 in current definition for 11 blocks debug: Looking for 'x' in an unsealed block creating an incomplete Phi: block@5: // for_header_L13 debug: Created Phi assignment: let x#5: uint64 = undefined while trying to resolve 'x' in block@5: // for_header_L13 -debug: Added x#5 to Phi node: let x#4: uint64 = φ(x#5 <- block@6) in block@6: // for_body_L13 -debug: Added x#3 to Phi node: let x#4: uint64 = φ(x#5 <- block@6, x#3 <- block@17) in block@17: // for_footer_L14 +debug: Added x#5 to Phi node: let x#4: uint64 = Phi(x#5 <- block@6) in block@6: // for_body_L13 +debug: Added x#3 to Phi node: let x#4: uint64 = Phi(x#5 <- block@6, x#3 <- block@17) in block@17: // for_footer_L14 debug: Looking for 'a' in an unsealed block creating an incomplete Phi: block@5: // for_header_L13 debug: Created Phi assignment: let a#4: uint64 = undefined while trying to resolve 'a' in block@5: // for_header_L13 -debug: Added a#4 to Phi node: let a#3: uint64 = φ(a#4 <- block@6) in block@6: // for_body_L13 -debug: Added a#3 to Phi node: let a#3: uint64 = φ(a#4 <- block@6, a#3 <- block@17) in block@17: // for_footer_L14 +debug: Added a#4 to Phi node: let a#3: uint64 = Phi(a#4 <- block@6) in block@6: // for_body_L13 +debug: Added a#3 to Phi node: let a#3: uint64 = Phi(a#4 <- block@6, a#3 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let a#3: uint64 = φ(a#4 <- block@6, a#3 <- block@17) (a#3) with a#4 debug: Deleting Phi assignment: let a#3: uint64 = φ(a#4 <- block@6, a#3 <- block@17) debug: Replaced trivial Phi node: let a#3: uint64 = φ(a#4 <- block@6, a#3 <- block@17) (a#3) with a#4 in current definition for 11 blocks debug: Looking for 'b' in an unsealed block creating an incomplete Phi: block@5: // for_header_L13 debug: Created Phi assignment: let b#4: uint64 = undefined while trying to resolve 'b' in block@5: // for_header_L13 -debug: Added b#4 to Phi node: let b#3: uint64 = φ(b#4 <- block@6) in block@6: // for_body_L13 -debug: Added b#3 to Phi node: let b#3: uint64 = φ(b#4 <- block@6, b#3 <- block@17) in block@17: // for_footer_L14 +debug: Added b#4 to Phi node: let b#3: uint64 = Phi(b#4 <- block@6) in block@6: // for_body_L13 +debug: Added b#3 to Phi node: let b#3: uint64 = Phi(b#4 <- block@6, b#3 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let b#3: uint64 = φ(b#4 <- block@6, b#3 <- block@17) (b#3) with b#4 debug: Deleting Phi assignment: let b#3: uint64 = φ(b#4 <- block@6, b#3 <- block@17) debug: Replaced trivial Phi node: let b#3: uint64 = φ(b#4 <- block@6, b#3 <- block@17) (b#3) with b#4 in current definition for 11 blocks -debug: Added c#0 to Phi node: let c#3: uint64 = φ(c#0 <- block@6) in block@6: // for_body_L13 -debug: Added c#3 to Phi node: let c#3: uint64 = φ(c#0 <- block@6, c#3 <- block@17) in block@17: // for_footer_L14 +debug: Added c#0 to Phi node: let c#3: uint64 = Phi(c#0 <- block@6) in block@6: // for_body_L13 +debug: Added c#3 to Phi node: let c#3: uint64 = Phi(c#0 <- block@6, c#3 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let c#3: uint64 = φ(c#0 <- block@6, c#3 <- block@17) (c#3) with c#0 debug: Deleting Phi assignment: let c#3: uint64 = φ(c#0 <- block@6, c#3 <- block@17) debug: Replaced trivial Phi node: let c#3: uint64 = φ(c#0 <- block@6, c#3 <- block@17) (c#3) with c#0 in current definition for 11 blocks @@ -205,45 +205,45 @@ debug: Terminated block@18: // after_for_L14 debug: Sealing block@19: // for_footer_L13 debug: Sealing block@None: // after_for_L13 debug: Created Phi assignment: let range_item%4#2: uint64 = undefined while trying to resolve 'range_item%4' in block@7: // for_header_L14 -debug: Added range_item%4#1 to Phi node: let range_item%4#2: uint64 = φ(range_item%4#1 <- block@6) in block@6: // for_body_L13 +debug: Added range_item%4#1 to Phi node: let range_item%4#2: uint64 = Phi(range_item%4#1 <- block@6) in block@6: // for_body_L13 debug: Created Phi assignment: let range_item%4#3: uint64 = undefined while trying to resolve 'range_item%4' in block@9: // for_header_L15 -debug: Added range_item%4#2 to Phi node: let range_item%4#3: uint64 = φ(range_item%4#2 <- block@8) in block@8: // for_body_L14 +debug: Added range_item%4#2 to Phi node: let range_item%4#3: uint64 = Phi(range_item%4#2 <- block@8) in block@8: // for_body_L14 debug: Created Phi assignment: let range_item%4#4: uint64 = undefined while trying to resolve 'range_item%4' in block@11: // for_header_L16 -debug: Added range_item%4#3 to Phi node: let range_item%4#4: uint64 = φ(range_item%4#3 <- block@10) in block@10: // for_body_L15 -debug: Added range_item%4#4 to Phi node: let range_item%4#4: uint64 = φ(range_item%4#3 <- block@10, range_item%4#4 <- block@13) in block@13: // for_footer_L16 +debug: Added range_item%4#3 to Phi node: let range_item%4#4: uint64 = Phi(range_item%4#3 <- block@10) in block@10: // for_body_L15 +debug: Added range_item%4#4 to Phi node: let range_item%4#4: uint64 = Phi(range_item%4#3 <- block@10, range_item%4#4 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let range_item%4#4: uint64 = φ(range_item%4#3 <- block@10, range_item%4#4 <- block@13) (range_item%4#4) with range_item%4#3 debug: Deleting Phi assignment: let range_item%4#4: uint64 = φ(range_item%4#3 <- block@10, range_item%4#4 <- block@13) debug: Replaced trivial Phi node: let range_item%4#4: uint64 = φ(range_item%4#3 <- block@10, range_item%4#4 <- block@13) (range_item%4#4) with range_item%4#3 in current definition for 3 blocks -debug: Added range_item%4#3 to Phi node: let range_item%4#3: uint64 = φ(range_item%4#2 <- block@8, range_item%4#3 <- block@15) in block@15: // for_footer_L15 +debug: Added range_item%4#3 to Phi node: let range_item%4#3: uint64 = Phi(range_item%4#2 <- block@8, range_item%4#3 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let range_item%4#3: uint64 = φ(range_item%4#2 <- block@8, range_item%4#3 <- block@15) (range_item%4#3) with range_item%4#2 debug: Deleting Phi assignment: let range_item%4#3: uint64 = φ(range_item%4#2 <- block@8, range_item%4#3 <- block@15) debug: Replaced trivial Phi node: let range_item%4#3: uint64 = φ(range_item%4#2 <- block@8, range_item%4#3 <- block@15) (range_item%4#3) with range_item%4#2 in current definition for 7 blocks -debug: Added range_item%4#2 to Phi node: let range_item%4#2: uint64 = φ(range_item%4#1 <- block@6, range_item%4#2 <- block@17) in block@17: // for_footer_L14 +debug: Added range_item%4#2 to Phi node: let range_item%4#2: uint64 = Phi(range_item%4#1 <- block@6, range_item%4#2 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let range_item%4#2: uint64 = φ(range_item%4#1 <- block@6, range_item%4#2 <- block@17) (range_item%4#2) with range_item%4#1 debug: Deleting Phi assignment: let range_item%4#2: uint64 = φ(range_item%4#1 <- block@6, range_item%4#2 <- block@17) debug: Replaced trivial Phi node: let range_item%4#2: uint64 = φ(range_item%4#1 <- block@6, range_item%4#2 <- block@17) (range_item%4#2) with range_item%4#1 in current definition for 11 blocks debug: Terminated block@19: // for_footer_L13 debug: Sealing block@5: // for_header_L13 -debug: Added range_item%4#0 to Phi node: let range_item%4#1: uint64 = φ(range_item%4#0 <- block@4) in block@4: // for_body_L12 -debug: Added range_item%4#5 to Phi node: let range_item%4#1: uint64 = φ(range_item%4#0 <- block@4, range_item%4#5 <- block@19) in block@19: // for_footer_L13 -debug: Added n#2 to Phi node: let n#3: uint64 = φ(n#2 <- block@4) in block@4: // for_body_L12 -debug: Added n#3 to Phi node: let n#3: uint64 = φ(n#2 <- block@4, n#3 <- block@19) in block@19: // for_footer_L13 +debug: Added range_item%4#0 to Phi node: let range_item%4#1: uint64 = Phi(range_item%4#0 <- block@4) in block@4: // for_body_L12 +debug: Added range_item%4#5 to Phi node: let range_item%4#1: uint64 = Phi(range_item%4#0 <- block@4, range_item%4#5 <- block@19) in block@19: // for_footer_L13 +debug: Added n#2 to Phi node: let n#3: uint64 = Phi(n#2 <- block@4) in block@4: // for_body_L12 +debug: Added n#3 to Phi node: let n#3: uint64 = Phi(n#2 <- block@4, n#3 <- block@19) in block@19: // for_footer_L13 debug: Replacing trivial Phi node: let n#3: uint64 = φ(n#2 <- block@4, n#3 <- block@19) (n#3) with n#2 debug: Deleting Phi assignment: let n#3: uint64 = φ(n#2 <- block@4, n#3 <- block@19) debug: Replaced trivial Phi node: let n#3: uint64 = φ(n#2 <- block@4, n#3 <- block@19) (n#3) with n#2 in current definition for 15 blocks debug: Looking for 'x' in an unsealed block creating an incomplete Phi: block@3: // for_header_L12 debug: Created Phi assignment: let x#6: uint64 = undefined while trying to resolve 'x' in block@3: // for_header_L12 -debug: Added x#6 to Phi node: let x#5: uint64 = φ(x#6 <- block@4) in block@4: // for_body_L12 -debug: Added x#4 to Phi node: let x#5: uint64 = φ(x#6 <- block@4, x#4 <- block@19) in block@19: // for_footer_L13 +debug: Added x#6 to Phi node: let x#5: uint64 = Phi(x#6 <- block@4) in block@4: // for_body_L12 +debug: Added x#4 to Phi node: let x#5: uint64 = Phi(x#6 <- block@4, x#4 <- block@19) in block@19: // for_footer_L13 debug: Looking for 'a' in an unsealed block creating an incomplete Phi: block@3: // for_header_L12 debug: Created Phi assignment: let a#5: uint64 = undefined while trying to resolve 'a' in block@3: // for_header_L12 -debug: Added a#5 to Phi node: let a#4: uint64 = φ(a#5 <- block@4) in block@4: // for_body_L12 -debug: Added a#4 to Phi node: let a#4: uint64 = φ(a#5 <- block@4, a#4 <- block@19) in block@19: // for_footer_L13 +debug: Added a#5 to Phi node: let a#4: uint64 = Phi(a#5 <- block@4) in block@4: // for_body_L12 +debug: Added a#4 to Phi node: let a#4: uint64 = Phi(a#5 <- block@4, a#4 <- block@19) in block@19: // for_footer_L13 debug: Replacing trivial Phi node: let a#4: uint64 = φ(a#5 <- block@4, a#4 <- block@19) (a#4) with a#5 debug: Deleting Phi assignment: let a#4: uint64 = φ(a#5 <- block@4, a#4 <- block@19) debug: Replaced trivial Phi node: let a#4: uint64 = φ(a#5 <- block@4, a#4 <- block@19) (a#4) with a#5 in current definition for 15 blocks -debug: Added b#0 to Phi node: let b#4: uint64 = φ(b#0 <- block@4) in block@4: // for_body_L12 -debug: Added b#4 to Phi node: let b#4: uint64 = φ(b#0 <- block@4, b#4 <- block@19) in block@19: // for_footer_L13 +debug: Added b#0 to Phi node: let b#4: uint64 = Phi(b#0 <- block@4) in block@4: // for_body_L12 +debug: Added b#4 to Phi node: let b#4: uint64 = Phi(b#0 <- block@4, b#4 <- block@19) in block@19: // for_footer_L13 debug: Replacing trivial Phi node: let b#4: uint64 = φ(b#0 <- block@4, b#4 <- block@19) (b#4) with b#0 debug: Deleting Phi assignment: let b#4: uint64 = φ(b#0 <- block@4, b#4 <- block@19) debug: Replaced trivial Phi node: let b#4: uint64 = φ(b#0 <- block@4, b#4 <- block@19) (b#4) with b#0 in current definition for 15 blocks @@ -251,44 +251,44 @@ debug: Terminated block@20: // after_for_L13 debug: Sealing block@21: // for_footer_L12 debug: Sealing block@None: // after_for_L12 debug: Created Phi assignment: let range_item%2#2: uint64 = undefined while trying to resolve 'range_item%2' in block@5: // for_header_L13 -debug: Added range_item%2#1 to Phi node: let range_item%2#2: uint64 = φ(range_item%2#1 <- block@4) in block@4: // for_body_L12 +debug: Added range_item%2#1 to Phi node: let range_item%2#2: uint64 = Phi(range_item%2#1 <- block@4) in block@4: // for_body_L12 debug: Created Phi assignment: let range_item%2#3: uint64 = undefined while trying to resolve 'range_item%2' in block@7: // for_header_L14 -debug: Added range_item%2#2 to Phi node: let range_item%2#3: uint64 = φ(range_item%2#2 <- block@6) in block@6: // for_body_L13 +debug: Added range_item%2#2 to Phi node: let range_item%2#3: uint64 = Phi(range_item%2#2 <- block@6) in block@6: // for_body_L13 debug: Created Phi assignment: let range_item%2#4: uint64 = undefined while trying to resolve 'range_item%2' in block@9: // for_header_L15 -debug: Added range_item%2#3 to Phi node: let range_item%2#4: uint64 = φ(range_item%2#3 <- block@8) in block@8: // for_body_L14 +debug: Added range_item%2#3 to Phi node: let range_item%2#4: uint64 = Phi(range_item%2#3 <- block@8) in block@8: // for_body_L14 debug: Created Phi assignment: let range_item%2#5: uint64 = undefined while trying to resolve 'range_item%2' in block@11: // for_header_L16 -debug: Added range_item%2#4 to Phi node: let range_item%2#5: uint64 = φ(range_item%2#4 <- block@10) in block@10: // for_body_L15 -debug: Added range_item%2#5 to Phi node: let range_item%2#5: uint64 = φ(range_item%2#4 <- block@10, range_item%2#5 <- block@13) in block@13: // for_footer_L16 +debug: Added range_item%2#4 to Phi node: let range_item%2#5: uint64 = Phi(range_item%2#4 <- block@10) in block@10: // for_body_L15 +debug: Added range_item%2#5 to Phi node: let range_item%2#5: uint64 = Phi(range_item%2#4 <- block@10, range_item%2#5 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let range_item%2#5: uint64 = φ(range_item%2#4 <- block@10, range_item%2#5 <- block@13) (range_item%2#5) with range_item%2#4 debug: Deleting Phi assignment: let range_item%2#5: uint64 = φ(range_item%2#4 <- block@10, range_item%2#5 <- block@13) debug: Replaced trivial Phi node: let range_item%2#5: uint64 = φ(range_item%2#4 <- block@10, range_item%2#5 <- block@13) (range_item%2#5) with range_item%2#4 in current definition for 3 blocks -debug: Added range_item%2#4 to Phi node: let range_item%2#4: uint64 = φ(range_item%2#3 <- block@8, range_item%2#4 <- block@15) in block@15: // for_footer_L15 +debug: Added range_item%2#4 to Phi node: let range_item%2#4: uint64 = Phi(range_item%2#3 <- block@8, range_item%2#4 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let range_item%2#4: uint64 = φ(range_item%2#3 <- block@8, range_item%2#4 <- block@15) (range_item%2#4) with range_item%2#3 debug: Deleting Phi assignment: let range_item%2#4: uint64 = φ(range_item%2#3 <- block@8, range_item%2#4 <- block@15) debug: Replaced trivial Phi node: let range_item%2#4: uint64 = φ(range_item%2#3 <- block@8, range_item%2#4 <- block@15) (range_item%2#4) with range_item%2#3 in current definition for 7 blocks -debug: Added range_item%2#3 to Phi node: let range_item%2#3: uint64 = φ(range_item%2#2 <- block@6, range_item%2#3 <- block@17) in block@17: // for_footer_L14 +debug: Added range_item%2#3 to Phi node: let range_item%2#3: uint64 = Phi(range_item%2#2 <- block@6, range_item%2#3 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let range_item%2#3: uint64 = φ(range_item%2#2 <- block@6, range_item%2#3 <- block@17) (range_item%2#3) with range_item%2#2 debug: Deleting Phi assignment: let range_item%2#3: uint64 = φ(range_item%2#2 <- block@6, range_item%2#3 <- block@17) debug: Replaced trivial Phi node: let range_item%2#3: uint64 = φ(range_item%2#2 <- block@6, range_item%2#3 <- block@17) (range_item%2#3) with range_item%2#2 in current definition for 11 blocks -debug: Added range_item%2#2 to Phi node: let range_item%2#2: uint64 = φ(range_item%2#1 <- block@4, range_item%2#2 <- block@19) in block@19: // for_footer_L13 +debug: Added range_item%2#2 to Phi node: let range_item%2#2: uint64 = Phi(range_item%2#1 <- block@4, range_item%2#2 <- block@19) in block@19: // for_footer_L13 debug: Replacing trivial Phi node: let range_item%2#2: uint64 = φ(range_item%2#1 <- block@4, range_item%2#2 <- block@19) (range_item%2#2) with range_item%2#1 debug: Deleting Phi assignment: let range_item%2#2: uint64 = φ(range_item%2#1 <- block@4, range_item%2#2 <- block@19) debug: Replaced trivial Phi node: let range_item%2#2: uint64 = φ(range_item%2#1 <- block@4, range_item%2#2 <- block@19) (range_item%2#2) with range_item%2#1 in current definition for 15 blocks debug: Terminated block@21: // for_footer_L12 debug: Sealing block@3: // for_header_L12 -debug: Added range_item%2#0 to Phi node: let range_item%2#1: uint64 = φ(range_item%2#0 <- block@2) in block@2: // for_body_L11 -debug: Added range_item%2#6 to Phi node: let range_item%2#1: uint64 = φ(range_item%2#0 <- block@2, range_item%2#6 <- block@21) in block@21: // for_footer_L12 -debug: Added n#1 to Phi node: let n#2: uint64 = φ(n#1 <- block@2) in block@2: // for_body_L11 -debug: Added n#2 to Phi node: let n#2: uint64 = φ(n#1 <- block@2, n#2 <- block@21) in block@21: // for_footer_L12 +debug: Added range_item%2#0 to Phi node: let range_item%2#1: uint64 = Phi(range_item%2#0 <- block@2) in block@2: // for_body_L11 +debug: Added range_item%2#6 to Phi node: let range_item%2#1: uint64 = Phi(range_item%2#0 <- block@2, range_item%2#6 <- block@21) in block@21: // for_footer_L12 +debug: Added n#1 to Phi node: let n#2: uint64 = Phi(n#1 <- block@2) in block@2: // for_body_L11 +debug: Added n#2 to Phi node: let n#2: uint64 = Phi(n#1 <- block@2, n#2 <- block@21) in block@21: // for_footer_L12 debug: Replacing trivial Phi node: let n#2: uint64 = φ(n#1 <- block@2, n#2 <- block@21) (n#2) with n#1 debug: Deleting Phi assignment: let n#2: uint64 = φ(n#1 <- block@2, n#2 <- block@21) debug: Replaced trivial Phi node: let n#2: uint64 = φ(n#1 <- block@2, n#2 <- block@21) (n#2) with n#1 in current definition for 19 blocks debug: Looking for 'x' in an unsealed block creating an incomplete Phi: block@1: // for_header_L11 debug: Created Phi assignment: let x#7: uint64 = undefined while trying to resolve 'x' in block@1: // for_header_L11 -debug: Added x#7 to Phi node: let x#6: uint64 = φ(x#7 <- block@2) in block@2: // for_body_L11 -debug: Added x#5 to Phi node: let x#6: uint64 = φ(x#7 <- block@2, x#5 <- block@21) in block@21: // for_footer_L12 -debug: Added a#0 to Phi node: let a#5: uint64 = φ(a#0 <- block@2) in block@2: // for_body_L11 -debug: Added a#5 to Phi node: let a#5: uint64 = φ(a#0 <- block@2, a#5 <- block@21) in block@21: // for_footer_L12 +debug: Added x#7 to Phi node: let x#6: uint64 = Phi(x#7 <- block@2) in block@2: // for_body_L11 +debug: Added x#5 to Phi node: let x#6: uint64 = Phi(x#7 <- block@2, x#5 <- block@21) in block@21: // for_footer_L12 +debug: Added a#0 to Phi node: let a#5: uint64 = Phi(a#0 <- block@2) in block@2: // for_body_L11 +debug: Added a#5 to Phi node: let a#5: uint64 = Phi(a#0 <- block@2, a#5 <- block@21) in block@21: // for_footer_L12 debug: Replacing trivial Phi node: let a#5: uint64 = φ(a#0 <- block@2, a#5 <- block@21) (a#5) with a#0 debug: Deleting Phi assignment: let a#5: uint64 = φ(a#0 <- block@2, a#5 <- block@21) debug: Replaced trivial Phi node: let a#5: uint64 = φ(a#0 <- block@2, a#5 <- block@21) (a#5) with a#0 in current definition for 19 blocks @@ -296,46 +296,46 @@ debug: Terminated block@22: // after_for_L12 debug: Sealing block@23: // for_footer_L11 debug: Sealing block@None: // after_for_L11 debug: Created Phi assignment: let range_item%0#2: uint64 = undefined while trying to resolve 'range_item%0' in block@3: // for_header_L12 -debug: Added range_item%0#1 to Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2) in block@2: // for_body_L11 +debug: Added range_item%0#1 to Phi node: let range_item%0#2: uint64 = Phi(range_item%0#1 <- block@2) in block@2: // for_body_L11 debug: Created Phi assignment: let range_item%0#3: uint64 = undefined while trying to resolve 'range_item%0' in block@5: // for_header_L13 -debug: Added range_item%0#2 to Phi node: let range_item%0#3: uint64 = φ(range_item%0#2 <- block@4) in block@4: // for_body_L12 +debug: Added range_item%0#2 to Phi node: let range_item%0#3: uint64 = Phi(range_item%0#2 <- block@4) in block@4: // for_body_L12 debug: Created Phi assignment: let range_item%0#4: uint64 = undefined while trying to resolve 'range_item%0' in block@7: // for_header_L14 -debug: Added range_item%0#3 to Phi node: let range_item%0#4: uint64 = φ(range_item%0#3 <- block@6) in block@6: // for_body_L13 +debug: Added range_item%0#3 to Phi node: let range_item%0#4: uint64 = Phi(range_item%0#3 <- block@6) in block@6: // for_body_L13 debug: Created Phi assignment: let range_item%0#5: uint64 = undefined while trying to resolve 'range_item%0' in block@9: // for_header_L15 -debug: Added range_item%0#4 to Phi node: let range_item%0#5: uint64 = φ(range_item%0#4 <- block@8) in block@8: // for_body_L14 +debug: Added range_item%0#4 to Phi node: let range_item%0#5: uint64 = Phi(range_item%0#4 <- block@8) in block@8: // for_body_L14 debug: Created Phi assignment: let range_item%0#6: uint64 = undefined while trying to resolve 'range_item%0' in block@11: // for_header_L16 -debug: Added range_item%0#5 to Phi node: let range_item%0#6: uint64 = φ(range_item%0#5 <- block@10) in block@10: // for_body_L15 -debug: Added range_item%0#6 to Phi node: let range_item%0#6: uint64 = φ(range_item%0#5 <- block@10, range_item%0#6 <- block@13) in block@13: // for_footer_L16 +debug: Added range_item%0#5 to Phi node: let range_item%0#6: uint64 = Phi(range_item%0#5 <- block@10) in block@10: // for_body_L15 +debug: Added range_item%0#6 to Phi node: let range_item%0#6: uint64 = Phi(range_item%0#5 <- block@10, range_item%0#6 <- block@13) in block@13: // for_footer_L16 debug: Replacing trivial Phi node: let range_item%0#6: uint64 = φ(range_item%0#5 <- block@10, range_item%0#6 <- block@13) (range_item%0#6) with range_item%0#5 debug: Deleting Phi assignment: let range_item%0#6: uint64 = φ(range_item%0#5 <- block@10, range_item%0#6 <- block@13) debug: Replaced trivial Phi node: let range_item%0#6: uint64 = φ(range_item%0#5 <- block@10, range_item%0#6 <- block@13) (range_item%0#6) with range_item%0#5 in current definition for 3 blocks -debug: Added range_item%0#5 to Phi node: let range_item%0#5: uint64 = φ(range_item%0#4 <- block@8, range_item%0#5 <- block@15) in block@15: // for_footer_L15 +debug: Added range_item%0#5 to Phi node: let range_item%0#5: uint64 = Phi(range_item%0#4 <- block@8, range_item%0#5 <- block@15) in block@15: // for_footer_L15 debug: Replacing trivial Phi node: let range_item%0#5: uint64 = φ(range_item%0#4 <- block@8, range_item%0#5 <- block@15) (range_item%0#5) with range_item%0#4 debug: Deleting Phi assignment: let range_item%0#5: uint64 = φ(range_item%0#4 <- block@8, range_item%0#5 <- block@15) debug: Replaced trivial Phi node: let range_item%0#5: uint64 = φ(range_item%0#4 <- block@8, range_item%0#5 <- block@15) (range_item%0#5) with range_item%0#4 in current definition for 7 blocks -debug: Added range_item%0#4 to Phi node: let range_item%0#4: uint64 = φ(range_item%0#3 <- block@6, range_item%0#4 <- block@17) in block@17: // for_footer_L14 +debug: Added range_item%0#4 to Phi node: let range_item%0#4: uint64 = Phi(range_item%0#3 <- block@6, range_item%0#4 <- block@17) in block@17: // for_footer_L14 debug: Replacing trivial Phi node: let range_item%0#4: uint64 = φ(range_item%0#3 <- block@6, range_item%0#4 <- block@17) (range_item%0#4) with range_item%0#3 debug: Deleting Phi assignment: let range_item%0#4: uint64 = φ(range_item%0#3 <- block@6, range_item%0#4 <- block@17) debug: Replaced trivial Phi node: let range_item%0#4: uint64 = φ(range_item%0#3 <- block@6, range_item%0#4 <- block@17) (range_item%0#4) with range_item%0#3 in current definition for 11 blocks -debug: Added range_item%0#3 to Phi node: let range_item%0#3: uint64 = φ(range_item%0#2 <- block@4, range_item%0#3 <- block@19) in block@19: // for_footer_L13 +debug: Added range_item%0#3 to Phi node: let range_item%0#3: uint64 = Phi(range_item%0#2 <- block@4, range_item%0#3 <- block@19) in block@19: // for_footer_L13 debug: Replacing trivial Phi node: let range_item%0#3: uint64 = φ(range_item%0#2 <- block@4, range_item%0#3 <- block@19) (range_item%0#3) with range_item%0#2 debug: Deleting Phi assignment: let range_item%0#3: uint64 = φ(range_item%0#2 <- block@4, range_item%0#3 <- block@19) debug: Replaced trivial Phi node: let range_item%0#3: uint64 = φ(range_item%0#2 <- block@4, range_item%0#3 <- block@19) (range_item%0#3) with range_item%0#2 in current definition for 15 blocks -debug: Added range_item%0#2 to Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#2 <- block@21) in block@21: // for_footer_L12 +debug: Added range_item%0#2 to Phi node: let range_item%0#2: uint64 = Phi(range_item%0#1 <- block@2, range_item%0#2 <- block@21) in block@21: // for_footer_L12 debug: Replacing trivial Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#2 <- block@21) (range_item%0#2) with range_item%0#1 debug: Deleting Phi assignment: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#2 <- block@21) debug: Replaced trivial Phi node: let range_item%0#2: uint64 = φ(range_item%0#1 <- block@2, range_item%0#2 <- block@21) (range_item%0#2) with range_item%0#1 in current definition for 19 blocks debug: Terminated block@23: // for_footer_L11 debug: Sealing block@1: // for_header_L11 -debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0) in block@0: // L7 -debug: Added range_item%0#7 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0, range_item%0#7 <- block@23) in block@23: // for_footer_L11 -debug: Added n#0 to Phi node: let n#1: uint64 = φ(n#0 <- block@0) in block@0: // L7 -debug: Added n#1 to Phi node: let n#1: uint64 = φ(n#0 <- block@0, n#1 <- block@23) in block@23: // for_footer_L11 +debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0) in block@0: // L7 +debug: Added range_item%0#7 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0, range_item%0#7 <- block@23) in block@23: // for_footer_L11 +debug: Added n#0 to Phi node: let n#1: uint64 = Phi(n#0 <- block@0) in block@0: // L7 +debug: Added n#1 to Phi node: let n#1: uint64 = Phi(n#0 <- block@0, n#1 <- block@23) in block@23: // for_footer_L11 debug: Replacing trivial Phi node: let n#1: uint64 = φ(n#0 <- block@0, n#1 <- block@23) (n#1) with n#0 debug: Deleting Phi assignment: let n#1: uint64 = φ(n#0 <- block@0, n#1 <- block@23) debug: Replaced trivial Phi node: let n#1: uint64 = φ(n#0 <- block@0, n#1 <- block@23) (n#1) with n#0 in current definition for 23 blocks -debug: Added x#0 to Phi node: let x#7: uint64 = φ(x#0 <- block@0) in block@0: // L7 -debug: Added x#6 to Phi node: let x#7: uint64 = φ(x#0 <- block@0, x#6 <- block@23) in block@23: // for_footer_L11 +debug: Added x#0 to Phi node: let x#7: uint64 = Phi(x#0 <- block@0) in block@0: // L7 +debug: Added x#6 to Phi node: let x#7: uint64 = Phi(x#0 <- block@0, x#6 <- block@23) in block@23: // for_footer_L11 debug: Terminated block@24: // after_for_L11 debug: Looking for 'range_item%18' in an unsealed block creating an incomplete Phi: block@25: // for_header_L25 debug: Created Phi assignment: let range_item%18#1: uint64 = undefined while trying to resolve 'range_item%18' in block@25: // for_header_L25 @@ -350,15 +350,15 @@ debug: Sealing block@27: // for_footer_L25 debug: Sealing block@None: // after_for_L25 debug: Terminated block@27: // for_footer_L25 debug: Sealing block@25: // for_header_L25 -debug: Added range_item%18#0 to Phi node: let range_item%18#1: uint64 = φ(range_item%18#0 <- block@24) in block@24: // after_for_L11 -debug: Added range_item%18#2 to Phi node: let range_item%18#1: uint64 = φ(range_item%18#0 <- block@24, range_item%18#2 <- block@27) in block@27: // for_footer_L25 -debug: Added range_index%19#0 to Phi node: let range_index%19#1: uint64 = φ(range_index%19#0 <- block@24) in block@24: // after_for_L11 -debug: Added range_index%19#2 to Phi node: let range_index%19#1: uint64 = φ(range_index%19#0 <- block@24, range_index%19#2 <- block@27) in block@27: // for_footer_L25 -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@24) in block@24: // after_for_L11 -debug: Added y#2 to Phi node: let y#1: uint64 = φ(y#0 <- block@24, y#2 <- block@27) in block@27: // for_footer_L25 +debug: Added range_item%18#0 to Phi node: let range_item%18#1: uint64 = Phi(range_item%18#0 <- block@24) in block@24: // after_for_L11 +debug: Added range_item%18#2 to Phi node: let range_item%18#1: uint64 = Phi(range_item%18#0 <- block@24, range_item%18#2 <- block@27) in block@27: // for_footer_L25 +debug: Added range_index%19#0 to Phi node: let range_index%19#1: uint64 = Phi(range_index%19#0 <- block@24) in block@24: // after_for_L11 +debug: Added range_index%19#2 to Phi node: let range_index%19#1: uint64 = Phi(range_index%19#0 <- block@24, range_index%19#2 <- block@27) in block@27: // for_footer_L25 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@24) in block@24: // after_for_L11 +debug: Added y#2 to Phi node: let y#1: uint64 = Phi(y#0 <- block@24, y#2 <- block@27) in block@27: // for_footer_L25 debug: Created Phi assignment: let x#8: uint64 = undefined while trying to resolve 'x' in block@25: // for_header_L25 -debug: Added x#7 to Phi node: let x#8: uint64 = φ(x#7 <- block@24) in block@24: // after_for_L11 -debug: Added x#8 to Phi node: let x#8: uint64 = φ(x#7 <- block@24, x#8 <- block@27) in block@27: // for_footer_L25 +debug: Added x#7 to Phi node: let x#8: uint64 = Phi(x#7 <- block@24) in block@24: // after_for_L11 +debug: Added x#8 to Phi node: let x#8: uint64 = Phi(x#7 <- block@24, x#8 <- block@27) in block@27: // for_footer_L25 debug: Replacing trivial Phi node: let x#8: uint64 = φ(x#7 <- block@24, x#8 <- block@27) (x#8) with x#7 debug: Deleting Phi assignment: let x#8: uint64 = φ(x#7 <- block@24, x#8 <- block@27) debug: Replaced trivial Phi node: let x#8: uint64 = φ(x#7 <- block@24, x#8 <- block@27) (x#8) with x#7 in current definition for 3 blocks diff --git a/examples/simplish/puya.log b/examples/simplish/puya.log index 4f66800219..0142d79da6 100644 --- a/examples/simplish/puya.log +++ b/examples/simplish/puya.log @@ -33,23 +33,23 @@ debug: Sealing block@8: // after_if_else_L77 debug: Terminated block@8: // after_if_else_L77 debug: Sealing block@9: // after_if_else_L74 debug: Created Phi assignment: let result#4: bytes = undefined while trying to resolve 'result' in block@9: // after_if_else_L74 -debug: Added result#0 to Phi node: let result#4: bytes = φ(result#0 <- block@1) in block@1: // if_body_L74 +debug: Added result#0 to Phi node: let result#4: bytes = Phi(result#0 <- block@1) in block@1: // if_body_L74 debug: Created Phi assignment: let result#5: bytes = undefined while trying to resolve 'result' in block@8: // after_if_else_L77 -debug: Added result#1 to Phi node: let result#5: bytes = φ(result#1 <- block@3) in block@3: // if_body_L77 +debug: Added result#1 to Phi node: let result#5: bytes = Phi(result#1 <- block@3) in block@3: // if_body_L77 debug: Created Phi assignment: let result#6: bytes = undefined while trying to resolve 'result' in block@7: // after_if_else_L80 -debug: Added result#2 to Phi node: let result#6: bytes = φ(result#2 <- block@5) in block@5: // if_body_L80 -debug: Added result#3 to Phi node: let result#6: bytes = φ(result#2 <- block@5, result#3 <- block@6) in block@6: // else_body_L80 -debug: Added result#6 to Phi node: let result#5: bytes = φ(result#1 <- block@3, result#6 <- block@7) in block@7: // after_if_else_L80 -debug: Added result#5 to Phi node: let result#4: bytes = φ(result#0 <- block@1, result#5 <- block@8) in block@8: // after_if_else_L77 +debug: Added result#2 to Phi node: let result#6: bytes = Phi(result#2 <- block@5) in block@5: // if_body_L80 +debug: Added result#3 to Phi node: let result#6: bytes = Phi(result#2 <- block@5, result#3 <- block@6) in block@6: // else_body_L80 +debug: Added result#6 to Phi node: let result#5: bytes = Phi(result#1 <- block@3, result#6 <- block@7) in block@7: // after_if_else_L80 +debug: Added result#5 to Phi node: let result#4: bytes = Phi(result#0 <- block@1, result#5 <- block@8) in block@8: // after_if_else_L77 debug: Created Phi assignment: let status#2: uint64 = undefined while trying to resolve 'status' in block@9: // after_if_else_L74 -debug: Added status#0 to Phi node: let status#2: uint64 = φ(status#0 <- block@1) in block@1: // if_body_L74 +debug: Added status#0 to Phi node: let status#2: uint64 = Phi(status#0 <- block@1) in block@1: // if_body_L74 debug: Created Phi assignment: let status#3: uint64 = undefined while trying to resolve 'status' in block@8: // after_if_else_L77 -debug: Added status#0 to Phi node: let status#3: uint64 = φ(status#0 <- block@3) in block@3: // if_body_L77 +debug: Added status#0 to Phi node: let status#3: uint64 = Phi(status#0 <- block@3) in block@3: // if_body_L77 debug: Created Phi assignment: let status#4: uint64 = undefined while trying to resolve 'status' in block@7: // after_if_else_L80 -debug: Added status#0 to Phi node: let status#4: uint64 = φ(status#0 <- block@5) in block@5: // if_body_L80 -debug: Added status#1 to Phi node: let status#4: uint64 = φ(status#0 <- block@5, status#1 <- block@6) in block@6: // else_body_L80 -debug: Added status#4 to Phi node: let status#3: uint64 = φ(status#0 <- block@3, status#4 <- block@7) in block@7: // after_if_else_L80 -debug: Added status#3 to Phi node: let status#2: uint64 = φ(status#0 <- block@1, status#3 <- block@8) in block@8: // after_if_else_L77 +debug: Added status#0 to Phi node: let status#4: uint64 = Phi(status#0 <- block@5) in block@5: // if_body_L80 +debug: Added status#1 to Phi node: let status#4: uint64 = Phi(status#0 <- block@5, status#1 <- block@6) in block@6: // else_body_L80 +debug: Added status#4 to Phi node: let status#3: uint64 = Phi(status#0 <- block@3, status#4 <- block@7) in block@7: // after_if_else_L80 +debug: Added status#3 to Phi node: let status#2: uint64 = Phi(status#0 <- block@1, status#3 <- block@8) in block@8: // after_if_else_L77 debug: Terminated block@9: // after_if_else_L74 debug: Sealing block@0: // L109 debug: Terminated block@0: // L109 @@ -80,8 +80,8 @@ debug: Sealing block@None: // else_body_L37 debug: Terminated block@6: // if_body_L37 debug: Sealing block@7: // after_if_else_L37 debug: Created Phi assignment: let sender#1: bytes = undefined while trying to resolve 'sender' in block@7: // after_if_else_L37 -debug: Added sender#0 to Phi node: let sender#1: bytes = φ(sender#0 <- block@5) in block@5: // if_body_L33 -debug: Added sender#0 to Phi node: let sender#1: bytes = φ(sender#0 <- block@5, sender#0 <- block@6) in block@6: // if_body_L37 +debug: Added sender#0 to Phi node: let sender#1: bytes = Phi(sender#0 <- block@5) in block@5: // if_body_L33 +debug: Added sender#0 to Phi node: let sender#1: bytes = Phi(sender#0 <- block@5, sender#0 <- block@6) in block@6: // if_body_L37 debug: Replacing trivial Phi node: let sender#1: bytes = φ(sender#0 <- block@5, sender#0 <- block@6) (sender#1) with sender#0 debug: Deleting Phi assignment: let sender#1: bytes = φ(sender#0 <- block@5, sender#0 <- block@6) debug: Replaced trivial Phi node: let sender#1: bytes = φ(sender#0 <- block@5, sender#0 <- block@6) (sender#1) with sender#0 in current definition for 1 blocks @@ -121,20 +121,20 @@ debug: Sealing block@22: // after_if_else_L51 debug: Terminated block@22: // after_if_else_L51 debug: Sealing block@23: // after_if_else_L48 debug: Created Phi assignment: let msg#4: bytes = undefined while trying to resolve 'msg' in block@23: // after_if_else_L48 -debug: Added msg#0 to Phi node: let msg#4: bytes = φ(msg#0 <- block@15) in block@15: // if_body_L48 +debug: Added msg#0 to Phi node: let msg#4: bytes = Phi(msg#0 <- block@15) in block@15: // if_body_L48 debug: Created Phi assignment: let msg#5: bytes = undefined while trying to resolve 'msg' in block@22: // after_if_else_L51 debug: Created Phi assignment: let msg#6: bytes = undefined while trying to resolve 'msg' in block@20: // after_if_else_L53 -debug: Added msg#1 to Phi node: let msg#6: bytes = φ(msg#1 <- block@18) in block@18: // if_body_L53 -debug: Added msg#2 to Phi node: let msg#6: bytes = φ(msg#1 <- block@18, msg#2 <- block@19) in block@19: // else_body_L53 -debug: Added msg#6 to Phi node: let msg#5: bytes = φ(msg#6 <- block@20) in block@20: // after_if_else_L53 -debug: Added msg#3 to Phi node: let msg#5: bytes = φ(msg#6 <- block@20, msg#3 <- block@21) in block@21: // else_body_L51 -debug: Added msg#5 to Phi node: let msg#4: bytes = φ(msg#0 <- block@15, msg#5 <- block@22) in block@22: // after_if_else_L51 +debug: Added msg#1 to Phi node: let msg#6: bytes = Phi(msg#1 <- block@18) in block@18: // if_body_L53 +debug: Added msg#2 to Phi node: let msg#6: bytes = Phi(msg#1 <- block@18, msg#2 <- block@19) in block@19: // else_body_L53 +debug: Added msg#6 to Phi node: let msg#5: bytes = Phi(msg#6 <- block@20) in block@20: // after_if_else_L53 +debug: Added msg#3 to Phi node: let msg#5: bytes = Phi(msg#6 <- block@20, msg#3 <- block@21) in block@21: // else_body_L51 +debug: Added msg#5 to Phi node: let msg#4: bytes = Phi(msg#0 <- block@15, msg#5 <- block@22) in block@22: // after_if_else_L51 debug: Created Phi assignment: let result#3: uint64 = undefined while trying to resolve 'result' in block@23: // after_if_else_L48 -debug: Added result#0 to Phi node: let result#3: uint64 = φ(result#0 <- block@15) in block@15: // if_body_L48 +debug: Added result#0 to Phi node: let result#3: uint64 = Phi(result#0 <- block@15) in block@15: // if_body_L48 debug: Created Phi assignment: let result#4: uint64 = undefined while trying to resolve 'result' in block@22: // after_if_else_L51 -debug: Added result#1 to Phi node: let result#4: uint64 = φ(result#1 <- block@20) in block@20: // after_if_else_L53 -debug: Added result#2 to Phi node: let result#4: uint64 = φ(result#1 <- block@20, result#2 <- block@21) in block@21: // else_body_L51 -debug: Added result#4 to Phi node: let result#3: uint64 = φ(result#0 <- block@15, result#4 <- block@22) in block@22: // after_if_else_L51 +debug: Added result#1 to Phi node: let result#4: uint64 = Phi(result#1 <- block@20) in block@20: // after_if_else_L53 +debug: Added result#2 to Phi node: let result#4: uint64 = Phi(result#1 <- block@20, result#2 <- block@21) in block@21: // else_body_L51 +debug: Added result#4 to Phi node: let result#3: uint64 = Phi(result#0 <- block@15, result#4 <- block@22) in block@22: // after_if_else_L51 debug: Terminated block@23: // after_if_else_L48 debug: Sealing block@0: // L65 debug: Terminated block@0: // L65 diff --git a/examples/ssa/puya.log b/examples/ssa/puya.log index 107575cdf9..3e7728f940 100644 --- a/examples/ssa/puya.log +++ b/examples/ssa/puya.log @@ -10,11 +10,11 @@ debug: Sealing block@None: // else_body_L51 debug: Terminated block@1: // if_body_L51 debug: Sealing block@2: // after_if_else_L51 debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@2: // after_if_else_L51 -debug: Added b#0 to Phi node: let b#2: uint64 = φ(b#0 <- block@0) in block@0: // L48 -debug: Added b#1 to Phi node: let b#2: uint64 = φ(b#0 <- block@0, b#1 <- block@1) in block@1: // if_body_L51 +debug: Added b#0 to Phi node: let b#2: uint64 = Phi(b#0 <- block@0) in block@0: // L48 +debug: Added b#1 to Phi node: let b#2: uint64 = Phi(b#0 <- block@0, b#1 <- block@1) in block@1: // if_body_L51 debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@2: // after_if_else_L51 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#0 <- block@0) in block@0: // L48 -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#0 <- block@0, a#1 <- block@1) in block@1: // if_body_L51 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#0 <- block@0) in block@0: // L48 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#0 <- block@0, a#1 <- block@1) in block@1: // if_body_L51 debug: Terminated block@2: // after_if_else_L51 debug: Sealing block@0: // L60 debug: Terminated block@0: // L60 @@ -24,8 +24,8 @@ debug: Terminated block@1: // if_body_L61 debug: Terminated block@2: // else_body_L61 debug: Sealing block@3: // after_if_else_L61 debug: Created Phi assignment: let x#2: uint64 = undefined while trying to resolve 'x' in block@3: // after_if_else_L61 -debug: Added x#0 to Phi node: let x#2: uint64 = φ(x#0 <- block@1) in block@1: // if_body_L61 -debug: Added x#1 to Phi node: let x#2: uint64 = φ(x#0 <- block@1, x#1 <- block@2) in block@2: // else_body_L61 +debug: Added x#0 to Phi node: let x#2: uint64 = Phi(x#0 <- block@1) in block@1: // if_body_L61 +debug: Added x#1 to Phi node: let x#2: uint64 = Phi(x#0 <- block@1, x#1 <- block@2) in block@2: // else_body_L61 debug: Terminated block@3: // after_if_else_L61 debug: Sealing block@0: // L7 debug: Terminated block@0: // L7 @@ -37,10 +37,10 @@ debug: Looking for 'b' in an unsealed block creating an incomplete Phi: block@1: debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@1: // while_top_L14 debug: Terminated block@2: // while_body_L14 debug: Sealing block@1: // while_top_L14 -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#1 <- block@0) in block@0: // L7 -debug: Added a#3 to Phi node: let a#2: uint64 = φ(a#1 <- block@0, a#3 <- block@2) in block@2: // while_body_L14 -debug: Added b#1 to Phi node: let b#2: uint64 = φ(b#1 <- block@0) in block@0: // L7 -debug: Added b#3 to Phi node: let b#2: uint64 = φ(b#1 <- block@0, b#3 <- block@2) in block@2: // while_body_L14 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#1 <- block@0) in block@0: // L7 +debug: Added a#3 to Phi node: let a#2: uint64 = Phi(a#1 <- block@0, a#3 <- block@2) in block@2: // while_body_L14 +debug: Added b#1 to Phi node: let b#2: uint64 = Phi(b#1 <- block@0) in block@0: // L7 +debug: Added b#3 to Phi node: let b#2: uint64 = Phi(b#1 <- block@0, b#3 <- block@2) in block@2: // while_body_L14 debug: Sealing block@None: // after_while_L14 debug: Terminated block@3: // after_while_L14 debug: Looking for 'range_item%1' in an unsealed block creating an incomplete Phi: block@4: // for_header_L18 @@ -56,12 +56,12 @@ debug: Sealing block@6: // for_footer_L18 debug: Sealing block@None: // after_for_L18 debug: Terminated block@6: // for_footer_L18 debug: Sealing block@4: // for_header_L18 -debug: Added range_item%1#0 to Phi node: let range_item%1#1: uint64 = φ(range_item%1#0 <- block@3) in block@3: // after_while_L14 -debug: Added range_item%1#2 to Phi node: let range_item%1#1: uint64 = φ(range_item%1#0 <- block@3, range_item%1#2 <- block@6) in block@6: // for_footer_L18 -debug: Added b#2 to Phi node: let b#4: uint64 = φ(b#2 <- block@3) in block@3: // after_while_L14 -debug: Added b#5 to Phi node: let b#4: uint64 = φ(b#2 <- block@3, b#5 <- block@6) in block@6: // for_footer_L18 -debug: Added a#2 to Phi node: let a#4: uint64 = φ(a#2 <- block@3) in block@3: // after_while_L14 -debug: Added a#5 to Phi node: let a#4: uint64 = φ(a#2 <- block@3, a#5 <- block@6) in block@6: // for_footer_L18 +debug: Added range_item%1#0 to Phi node: let range_item%1#1: uint64 = Phi(range_item%1#0 <- block@3) in block@3: // after_while_L14 +debug: Added range_item%1#2 to Phi node: let range_item%1#1: uint64 = Phi(range_item%1#0 <- block@3, range_item%1#2 <- block@6) in block@6: // for_footer_L18 +debug: Added b#2 to Phi node: let b#4: uint64 = Phi(b#2 <- block@3) in block@3: // after_while_L14 +debug: Added b#5 to Phi node: let b#4: uint64 = Phi(b#2 <- block@3, b#5 <- block@6) in block@6: // for_footer_L18 +debug: Added a#2 to Phi node: let a#4: uint64 = Phi(a#2 <- block@3) in block@3: // after_while_L14 +debug: Added a#5 to Phi node: let a#4: uint64 = Phi(a#2 <- block@3, a#5 <- block@6) in block@6: // for_footer_L18 debug: Terminated block@7: // after_for_L18 debug: Sealing block@None: // if_body_L22 debug: Sealing block@None: // else_body_L22 @@ -88,13 +88,13 @@ debug: Terminated block@18: // after_if_else_L32 debug: Sealing block@19: // after_if_else_L22 debug: Created Phi assignment: let c#4: uint64 = undefined while trying to resolve 'c' in block@19: // after_if_else_L22 debug: Created Phi assignment: let c#5: uint64 = undefined while trying to resolve 'c' in block@14: // after_if_else_L23 -debug: Added c#0 to Phi node: let c#5: uint64 = φ(c#0 <- block@9) in block@9: // if_body_L23 -debug: Added c#1 to Phi node: let c#5: uint64 = φ(c#0 <- block@9, c#1 <- block@13) in block@13: // after_if_else_L28 -debug: Added c#5 to Phi node: let c#4: uint64 = φ(c#5 <- block@14) in block@14: // after_if_else_L23 +debug: Added c#0 to Phi node: let c#5: uint64 = Phi(c#0 <- block@9) in block@9: // if_body_L23 +debug: Added c#1 to Phi node: let c#5: uint64 = Phi(c#0 <- block@9, c#1 <- block@13) in block@13: // after_if_else_L28 +debug: Added c#5 to Phi node: let c#4: uint64 = Phi(c#5 <- block@14) in block@14: // after_if_else_L23 debug: Created Phi assignment: let c#6: uint64 = undefined while trying to resolve 'c' in block@18: // after_if_else_L32 -debug: Added c#2 to Phi node: let c#6: uint64 = φ(c#2 <- block@16) in block@16: // if_body_L32 -debug: Added c#3 to Phi node: let c#6: uint64 = φ(c#2 <- block@16, c#3 <- block@17) in block@17: // else_body_L32 -debug: Added c#6 to Phi node: let c#4: uint64 = φ(c#5 <- block@14, c#6 <- block@18) in block@18: // after_if_else_L32 +debug: Added c#2 to Phi node: let c#6: uint64 = Phi(c#2 <- block@16) in block@16: // if_body_L32 +debug: Added c#3 to Phi node: let c#6: uint64 = Phi(c#2 <- block@16, c#3 <- block@17) in block@17: // else_body_L32 +debug: Added c#6 to Phi node: let c#4: uint64 = Phi(c#5 <- block@14, c#6 <- block@18) in block@18: // after_if_else_L32 debug: Terminated block@19: // after_if_else_L22 debug: Sealing block@0: // L43 debug: Terminated block@0: // L43 diff --git a/examples/ssa2/puya.log b/examples/ssa2/puya.log index 4a71f20677..7addfe0236 100644 --- a/examples/ssa2/puya.log +++ b/examples/ssa2/puya.log @@ -10,11 +10,11 @@ debug: Sealing block@None: // else_body_L45 debug: Terminated block@1: // if_body_L45 debug: Sealing block@2: // after_if_else_L45 debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@2: // after_if_else_L45 -debug: Added b#0 to Phi node: let b#2: uint64 = φ(b#0 <- block@0) in block@0: // L42 -debug: Added b#1 to Phi node: let b#2: uint64 = φ(b#0 <- block@0, b#1 <- block@1) in block@1: // if_body_L45 +debug: Added b#0 to Phi node: let b#2: uint64 = Phi(b#0 <- block@0) in block@0: // L42 +debug: Added b#1 to Phi node: let b#2: uint64 = Phi(b#0 <- block@0, b#1 <- block@1) in block@1: // if_body_L45 debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@2: // after_if_else_L45 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#0 <- block@0) in block@0: // L42 -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#0 <- block@0, a#1 <- block@1) in block@1: // if_body_L45 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#0 <- block@0) in block@0: // L42 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#0 <- block@0, a#1 <- block@1) in block@1: // if_body_L45 debug: Terminated block@2: // after_if_else_L45 debug: Sealing block@0: // L7 debug: Terminated block@0: // L7 @@ -31,12 +31,12 @@ debug: Sealing block@3: // for_footer_L15 debug: Sealing block@None: // after_for_L15 debug: Terminated block@3: // for_footer_L15 debug: Sealing block@1: // for_header_L15 -debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0) in block@0: // L7 -debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L15 -debug: Added b#0 to Phi node: let b#1: uint64 = φ(b#0 <- block@0) in block@0: // L7 -debug: Added b#2 to Phi node: let b#1: uint64 = φ(b#0 <- block@0, b#2 <- block@3) in block@3: // for_footer_L15 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@0) in block@0: // L7 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#0 <- block@0, a#2 <- block@3) in block@3: // for_footer_L15 +debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0) in block@0: // L7 +debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L15 +debug: Added b#0 to Phi node: let b#1: uint64 = Phi(b#0 <- block@0) in block@0: // L7 +debug: Added b#2 to Phi node: let b#1: uint64 = Phi(b#0 <- block@0, b#2 <- block@3) in block@3: // for_footer_L15 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0) in block@0: // L7 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0, a#2 <- block@3) in block@3: // for_footer_L15 debug: Terminated block@4: // after_for_L15 debug: Sealing block@0: // L37 debug: Terminated block@0: // L37 diff --git a/examples/string_ops/puya.log b/examples/string_ops/puya.log index f7f8e9b838..616b637408 100644 --- a/examples/string_ops/puya.log +++ b/examples/string_ops/puya.log @@ -22,15 +22,15 @@ debug: Terminated block@3: // if_body_L43 debug: Sealing block@4: // after_if_else_L43 debug: Terminated block@4: // after_if_else_L43 debug: Sealing block@1: // while_top_L42 -debug: Added start#0 to Phi node: let start#1: uint64 = φ(start#0 <- block@0) in block@0: // L36 -debug: Added start#2 to Phi node: let start#1: uint64 = φ(start#0 <- block@0, start#2 <- block@4) in block@4: // after_if_else_L43 -debug: Added item#0 to Phi node: let item#1: bytes = φ(item#0 <- block@0) in block@0: // L36 -debug: Added item#1 to Phi node: let item#1: bytes = φ(item#0 <- block@0, item#1 <- block@4) in block@4: // after_if_else_L43 +debug: Added start#0 to Phi node: let start#1: uint64 = Phi(start#0 <- block@0) in block@0: // L36 +debug: Added start#2 to Phi node: let start#1: uint64 = Phi(start#0 <- block@0, start#2 <- block@4) in block@4: // after_if_else_L43 +debug: Added item#0 to Phi node: let item#1: bytes = Phi(item#0 <- block@0) in block@0: // L36 +debug: Added item#1 to Phi node: let item#1: bytes = Phi(item#0 <- block@0, item#1 <- block@4) in block@4: // after_if_else_L43 debug: Replacing trivial Phi node: let item#1: bytes = φ(item#0 <- block@0, item#1 <- block@4) (item#1) with item#0 debug: Deleting Phi assignment: let item#1: bytes = φ(item#0 <- block@0, item#1 <- block@4) debug: Replaced trivial Phi node: let item#1: bytes = φ(item#0 <- block@0, item#1 <- block@4) (item#1) with item#0 in current definition for 3 blocks -debug: Added sequence#0 to Phi node: let sequence#1: bytes = φ(sequence#0 <- block@0) in block@0: // L36 -debug: Added sequence#1 to Phi node: let sequence#1: bytes = φ(sequence#0 <- block@0, sequence#1 <- block@4) in block@4: // after_if_else_L43 +debug: Added sequence#0 to Phi node: let sequence#1: bytes = Phi(sequence#0 <- block@0) in block@0: // L36 +debug: Added sequence#1 to Phi node: let sequence#1: bytes = Phi(sequence#0 <- block@0, sequence#1 <- block@4) in block@4: // after_if_else_L43 debug: Replacing trivial Phi node: let sequence#1: bytes = φ(sequence#0 <- block@0, sequence#1 <- block@4) (sequence#1) with sequence#0 debug: Deleting Phi assignment: let sequence#1: bytes = φ(sequence#0 <- block@0, sequence#1 <- block@4) debug: Replaced trivial Phi node: let sequence#1: bytes = φ(sequence#0 <- block@0, sequence#1 <- block@4) (sequence#1) with sequence#0 in current definition for 3 blocks diff --git a/examples/stubs/puya.log b/examples/stubs/puya.log index 1b299b6468..bdadac7e10 100644 --- a/examples/stubs/puya.log +++ b/examples/stubs/puya.log @@ -13,11 +13,11 @@ debug: Terminated block@1: // ternary_true_L55 debug: Terminated block@2: // ternary_false_L55 debug: Sealing block@3: // ternary_merge_L55 debug: Created Phi assignment: let ternary_result%27#2: uint64 = undefined while trying to resolve 'ternary_result%27' in block@3: // ternary_merge_L55 -debug: Added ternary_result%27#0 to Phi node: let ternary_result%27#2: uint64 = φ(ternary_result%27#0 <- block@1) in block@1: // ternary_true_L55 -debug: Added ternary_result%27#1 to Phi node: let ternary_result%27#2: uint64 = φ(ternary_result%27#0 <- block@1, ternary_result%27#1 <- block@2) in block@2: // ternary_false_L55 +debug: Added ternary_result%27#0 to Phi node: let ternary_result%27#2: uint64 = Phi(ternary_result%27#0 <- block@1) in block@1: // ternary_true_L55 +debug: Added ternary_result%27#1 to Phi node: let ternary_result%27#2: uint64 = Phi(ternary_result%27#0 <- block@1, ternary_result%27#1 <- block@2) in block@2: // ternary_false_L55 debug: Created Phi assignment: let true#1: uint64 = undefined while trying to resolve 'true' in block@3: // ternary_merge_L55 -debug: Added true#0 to Phi node: let true#1: uint64 = φ(true#0 <- block@1) in block@1: // ternary_true_L55 -debug: Added true#0 to Phi node: let true#1: uint64 = φ(true#0 <- block@1, true#0 <- block@2) in block@2: // ternary_false_L55 +debug: Added true#0 to Phi node: let true#1: uint64 = Phi(true#0 <- block@1) in block@1: // ternary_true_L55 +debug: Added true#0 to Phi node: let true#1: uint64 = Phi(true#0 <- block@1, true#0 <- block@2) in block@2: // ternary_false_L55 debug: Replacing trivial Phi node: let true#1: uint64 = φ(true#0 <- block@1, true#0 <- block@2) (true#1) with true#0 debug: Deleting Phi assignment: let true#1: uint64 = φ(true#0 <- block@1, true#0 <- block@2) debug: Replaced trivial Phi node: let true#1: uint64 = φ(true#0 <- block@1, true#0 <- block@2) (true#1) with true#0 in current definition for 1 blocks @@ -26,19 +26,19 @@ debug: Sealing block@None: // ternary_true_L56 debug: Sealing block@None: // ternary_false_L56 debug: Terminated block@4: // ternary_true_L56 debug: Created Phi assignment: let false#1: uint64 = undefined while trying to resolve 'false' in block@3: // ternary_merge_L55 -debug: Added false#0 to Phi node: let false#1: uint64 = φ(false#0 <- block@1) in block@1: // ternary_true_L55 -debug: Added false#0 to Phi node: let false#1: uint64 = φ(false#0 <- block@1, false#0 <- block@2) in block@2: // ternary_false_L55 +debug: Added false#0 to Phi node: let false#1: uint64 = Phi(false#0 <- block@1) in block@1: // ternary_true_L55 +debug: Added false#0 to Phi node: let false#1: uint64 = Phi(false#0 <- block@1, false#0 <- block@2) in block@2: // ternary_false_L55 debug: Replacing trivial Phi node: let false#1: uint64 = φ(false#0 <- block@1, false#0 <- block@2) (false#1) with false#0 debug: Deleting Phi assignment: let false#1: uint64 = φ(false#0 <- block@1, false#0 <- block@2) debug: Replaced trivial Phi node: let false#1: uint64 = φ(false#0 <- block@1, false#0 <- block@2) (false#1) with false#0 in current definition for 1 blocks debug: Terminated block@5: // ternary_false_L56 debug: Sealing block@6: // ternary_merge_L56 debug: Created Phi assignment: let ternary_result%29#2: uint64 = undefined while trying to resolve 'ternary_result%29' in block@6: // ternary_merge_L56 -debug: Added ternary_result%29#0 to Phi node: let ternary_result%29#2: uint64 = φ(ternary_result%29#0 <- block@4) in block@4: // ternary_true_L56 -debug: Added ternary_result%29#1 to Phi node: let ternary_result%29#2: uint64 = φ(ternary_result%29#0 <- block@4, ternary_result%29#1 <- block@5) in block@5: // ternary_false_L56 +debug: Added ternary_result%29#0 to Phi node: let ternary_result%29#2: uint64 = Phi(ternary_result%29#0 <- block@4) in block@4: // ternary_true_L56 +debug: Added ternary_result%29#1 to Phi node: let ternary_result%29#2: uint64 = Phi(ternary_result%29#0 <- block@4, ternary_result%29#1 <- block@5) in block@5: // ternary_false_L56 debug: Created Phi assignment: let false#2: uint64 = undefined while trying to resolve 'false' in block@6: // ternary_merge_L56 -debug: Added false#0 to Phi node: let false#2: uint64 = φ(false#0 <- block@4) in block@4: // ternary_true_L56 -debug: Added false#0 to Phi node: let false#2: uint64 = φ(false#0 <- block@4, false#0 <- block@5) in block@5: // ternary_false_L56 +debug: Added false#0 to Phi node: let false#2: uint64 = Phi(false#0 <- block@4) in block@4: // ternary_true_L56 +debug: Added false#0 to Phi node: let false#2: uint64 = Phi(false#0 <- block@4, false#0 <- block@5) in block@5: // ternary_false_L56 debug: Replacing trivial Phi node: let false#2: uint64 = φ(false#0 <- block@4, false#0 <- block@5) (false#2) with false#0 debug: Deleting Phi assignment: let false#2: uint64 = φ(false#0 <- block@4, false#0 <- block@5) debug: Replaced trivial Phi node: let false#2: uint64 = φ(false#0 <- block@4, false#0 <- block@5) (false#2) with false#0 in current definition for 1 blocks @@ -47,19 +47,19 @@ debug: Sealing block@None: // ternary_true_L57 debug: Sealing block@None: // ternary_false_L57 debug: Terminated block@7: // ternary_true_L57 debug: Created Phi assignment: let true#2: uint64 = undefined while trying to resolve 'true' in block@6: // ternary_merge_L56 -debug: Added true#0 to Phi node: let true#2: uint64 = φ(true#0 <- block@4) in block@4: // ternary_true_L56 -debug: Added true#0 to Phi node: let true#2: uint64 = φ(true#0 <- block@4, true#0 <- block@5) in block@5: // ternary_false_L56 +debug: Added true#0 to Phi node: let true#2: uint64 = Phi(true#0 <- block@4) in block@4: // ternary_true_L56 +debug: Added true#0 to Phi node: let true#2: uint64 = Phi(true#0 <- block@4, true#0 <- block@5) in block@5: // ternary_false_L56 debug: Replacing trivial Phi node: let true#2: uint64 = φ(true#0 <- block@4, true#0 <- block@5) (true#2) with true#0 debug: Deleting Phi assignment: let true#2: uint64 = φ(true#0 <- block@4, true#0 <- block@5) debug: Replaced trivial Phi node: let true#2: uint64 = φ(true#0 <- block@4, true#0 <- block@5) (true#2) with true#0 in current definition for 1 blocks debug: Terminated block@8: // ternary_false_L57 debug: Sealing block@9: // ternary_merge_L57 debug: Created Phi assignment: let ternary_result%31#2: uint64 = undefined while trying to resolve 'ternary_result%31' in block@9: // ternary_merge_L57 -debug: Added ternary_result%31#0 to Phi node: let ternary_result%31#2: uint64 = φ(ternary_result%31#0 <- block@7) in block@7: // ternary_true_L57 -debug: Added ternary_result%31#1 to Phi node: let ternary_result%31#2: uint64 = φ(ternary_result%31#0 <- block@7, ternary_result%31#1 <- block@8) in block@8: // ternary_false_L57 +debug: Added ternary_result%31#0 to Phi node: let ternary_result%31#2: uint64 = Phi(ternary_result%31#0 <- block@7) in block@7: // ternary_true_L57 +debug: Added ternary_result%31#1 to Phi node: let ternary_result%31#2: uint64 = Phi(ternary_result%31#0 <- block@7, ternary_result%31#1 <- block@8) in block@8: // ternary_false_L57 debug: Created Phi assignment: let false#3: uint64 = undefined while trying to resolve 'false' in block@9: // ternary_merge_L57 -debug: Added false#0 to Phi node: let false#3: uint64 = φ(false#0 <- block@7) in block@7: // ternary_true_L57 -debug: Added false#0 to Phi node: let false#3: uint64 = φ(false#0 <- block@7, false#0 <- block@8) in block@8: // ternary_false_L57 +debug: Added false#0 to Phi node: let false#3: uint64 = Phi(false#0 <- block@7) in block@7: // ternary_true_L57 +debug: Added false#0 to Phi node: let false#3: uint64 = Phi(false#0 <- block@7, false#0 <- block@8) in block@8: // ternary_false_L57 debug: Replacing trivial Phi node: let false#3: uint64 = φ(false#0 <- block@7, false#0 <- block@8) (false#3) with false#0 debug: Deleting Phi assignment: let false#3: uint64 = φ(false#0 <- block@7, false#0 <- block@8) debug: Replaced trivial Phi node: let false#3: uint64 = φ(false#0 <- block@7, false#0 <- block@8) (false#3) with false#0 in current definition for 1 blocks @@ -70,23 +70,23 @@ debug: Terminated block@10: // ternary_true_L58 debug: Terminated block@11: // ternary_false_L58 debug: Sealing block@12: // ternary_merge_L58 debug: Created Phi assignment: let ternary_result%33#2: uint64 = undefined while trying to resolve 'ternary_result%33' in block@12: // ternary_merge_L58 -debug: Added ternary_result%33#0 to Phi node: let ternary_result%33#2: uint64 = φ(ternary_result%33#0 <- block@10) in block@10: // ternary_true_L58 -debug: Added ternary_result%33#1 to Phi node: let ternary_result%33#2: uint64 = φ(ternary_result%33#0 <- block@10, ternary_result%33#1 <- block@11) in block@11: // ternary_false_L58 +debug: Added ternary_result%33#0 to Phi node: let ternary_result%33#2: uint64 = Phi(ternary_result%33#0 <- block@10) in block@10: // ternary_true_L58 +debug: Added ternary_result%33#1 to Phi node: let ternary_result%33#2: uint64 = Phi(ternary_result%33#0 <- block@10, ternary_result%33#1 <- block@11) in block@11: // ternary_false_L58 debug: Created Phi assignment: let false#4: uint64 = undefined while trying to resolve 'false' in block@12: // ternary_merge_L58 -debug: Added false#0 to Phi node: let false#4: uint64 = φ(false#0 <- block@10) in block@10: // ternary_true_L58 -debug: Added false#0 to Phi node: let false#4: uint64 = φ(false#0 <- block@10, false#0 <- block@11) in block@11: // ternary_false_L58 +debug: Added false#0 to Phi node: let false#4: uint64 = Phi(false#0 <- block@10) in block@10: // ternary_true_L58 +debug: Added false#0 to Phi node: let false#4: uint64 = Phi(false#0 <- block@10, false#0 <- block@11) in block@11: // ternary_false_L58 debug: Replacing trivial Phi node: let false#4: uint64 = φ(false#0 <- block@10, false#0 <- block@11) (false#4) with false#0 debug: Deleting Phi assignment: let false#4: uint64 = φ(false#0 <- block@10, false#0 <- block@11) debug: Replaced trivial Phi node: let false#4: uint64 = φ(false#0 <- block@10, false#0 <- block@11) (false#4) with false#0 in current definition for 1 blocks debug: Created Phi assignment: let true#3: uint64 = undefined while trying to resolve 'true' in block@12: // ternary_merge_L58 debug: Created Phi assignment: let true#4: uint64 = undefined while trying to resolve 'true' in block@9: // ternary_merge_L57 -debug: Added true#0 to Phi node: let true#4: uint64 = φ(true#0 <- block@7) in block@7: // ternary_true_L57 -debug: Added true#0 to Phi node: let true#4: uint64 = φ(true#0 <- block@7, true#0 <- block@8) in block@8: // ternary_false_L57 +debug: Added true#0 to Phi node: let true#4: uint64 = Phi(true#0 <- block@7) in block@7: // ternary_true_L57 +debug: Added true#0 to Phi node: let true#4: uint64 = Phi(true#0 <- block@7, true#0 <- block@8) in block@8: // ternary_false_L57 debug: Replacing trivial Phi node: let true#4: uint64 = φ(true#0 <- block@7, true#0 <- block@8) (true#4) with true#0 debug: Deleting Phi assignment: let true#4: uint64 = φ(true#0 <- block@7, true#0 <- block@8) debug: Replaced trivial Phi node: let true#4: uint64 = φ(true#0 <- block@7, true#0 <- block@8) (true#4) with true#0 in current definition for 1 blocks -debug: Added true#0 to Phi node: let true#3: uint64 = φ(true#0 <- block@10) in block@10: // ternary_true_L58 -debug: Added true#0 to Phi node: let true#3: uint64 = φ(true#0 <- block@10, true#0 <- block@11) in block@11: // ternary_false_L58 +debug: Added true#0 to Phi node: let true#3: uint64 = Phi(true#0 <- block@10) in block@10: // ternary_true_L58 +debug: Added true#0 to Phi node: let true#3: uint64 = Phi(true#0 <- block@10, true#0 <- block@11) in block@11: // ternary_false_L58 debug: Replacing trivial Phi node: let true#3: uint64 = φ(true#0 <- block@10, true#0 <- block@11) (true#3) with true#0 debug: Deleting Phi assignment: let true#3: uint64 = φ(true#0 <- block@10, true#0 <- block@11) debug: Replaced trivial Phi node: let true#3: uint64 = φ(true#0 <- block@10, true#0 <- block@11) (true#3) with true#0 in current definition for 1 blocks @@ -97,11 +97,11 @@ debug: Terminated block@13: // ternary_true_L59 debug: Terminated block@14: // ternary_false_L59 debug: Sealing block@15: // ternary_merge_L59 debug: Created Phi assignment: let ternary_result%35#2: uint64 = undefined while trying to resolve 'ternary_result%35' in block@15: // ternary_merge_L59 -debug: Added ternary_result%35#0 to Phi node: let ternary_result%35#2: uint64 = φ(ternary_result%35#0 <- block@13) in block@13: // ternary_true_L59 -debug: Added ternary_result%35#1 to Phi node: let ternary_result%35#2: uint64 = φ(ternary_result%35#0 <- block@13, ternary_result%35#1 <- block@14) in block@14: // ternary_false_L59 +debug: Added ternary_result%35#0 to Phi node: let ternary_result%35#2: uint64 = Phi(ternary_result%35#0 <- block@13) in block@13: // ternary_true_L59 +debug: Added ternary_result%35#1 to Phi node: let ternary_result%35#2: uint64 = Phi(ternary_result%35#0 <- block@13, ternary_result%35#1 <- block@14) in block@14: // ternary_false_L59 debug: Created Phi assignment: let true#5: uint64 = undefined while trying to resolve 'true' in block@15: // ternary_merge_L59 -debug: Added true#0 to Phi node: let true#5: uint64 = φ(true#0 <- block@13) in block@13: // ternary_true_L59 -debug: Added true#0 to Phi node: let true#5: uint64 = φ(true#0 <- block@13, true#0 <- block@14) in block@14: // ternary_false_L59 +debug: Added true#0 to Phi node: let true#5: uint64 = Phi(true#0 <- block@13) in block@13: // ternary_true_L59 +debug: Added true#0 to Phi node: let true#5: uint64 = Phi(true#0 <- block@13, true#0 <- block@14) in block@14: // ternary_false_L59 debug: Replacing trivial Phi node: let true#5: uint64 = φ(true#0 <- block@13, true#0 <- block@14) (true#5) with true#0 debug: Deleting Phi assignment: let true#5: uint64 = φ(true#0 <- block@13, true#0 <- block@14) debug: Replaced trivial Phi node: let true#5: uint64 = φ(true#0 <- block@13, true#0 <- block@14) (true#5) with true#0 in current definition for 1 blocks @@ -110,25 +110,25 @@ debug: Sealing block@None: // ternary_true_L60 debug: Sealing block@None: // ternary_false_L60 debug: Terminated block@16: // ternary_true_L60 debug: Created Phi assignment: let false#5: uint64 = undefined while trying to resolve 'false' in block@15: // ternary_merge_L59 -debug: Added false#0 to Phi node: let false#5: uint64 = φ(false#0 <- block@13) in block@13: // ternary_true_L59 -debug: Added false#0 to Phi node: let false#5: uint64 = φ(false#0 <- block@13, false#0 <- block@14) in block@14: // ternary_false_L59 +debug: Added false#0 to Phi node: let false#5: uint64 = Phi(false#0 <- block@13) in block@13: // ternary_true_L59 +debug: Added false#0 to Phi node: let false#5: uint64 = Phi(false#0 <- block@13, false#0 <- block@14) in block@14: // ternary_false_L59 debug: Replacing trivial Phi node: let false#5: uint64 = φ(false#0 <- block@13, false#0 <- block@14) (false#5) with false#0 debug: Deleting Phi assignment: let false#5: uint64 = φ(false#0 <- block@13, false#0 <- block@14) debug: Replaced trivial Phi node: let false#5: uint64 = φ(false#0 <- block@13, false#0 <- block@14) (false#5) with false#0 in current definition for 1 blocks debug: Terminated block@17: // ternary_false_L60 debug: Sealing block@18: // ternary_merge_L60 debug: Created Phi assignment: let ternary_result%37#2: uint64 = undefined while trying to resolve 'ternary_result%37' in block@18: // ternary_merge_L60 -debug: Added ternary_result%37#0 to Phi node: let ternary_result%37#2: uint64 = φ(ternary_result%37#0 <- block@16) in block@16: // ternary_true_L60 -debug: Added ternary_result%37#1 to Phi node: let ternary_result%37#2: uint64 = φ(ternary_result%37#0 <- block@16, ternary_result%37#1 <- block@17) in block@17: // ternary_false_L60 +debug: Added ternary_result%37#0 to Phi node: let ternary_result%37#2: uint64 = Phi(ternary_result%37#0 <- block@16) in block@16: // ternary_true_L60 +debug: Added ternary_result%37#1 to Phi node: let ternary_result%37#2: uint64 = Phi(ternary_result%37#0 <- block@16, ternary_result%37#1 <- block@17) in block@17: // ternary_false_L60 debug: Created Phi assignment: let true#6: uint64 = undefined while trying to resolve 'true' in block@18: // ternary_merge_L60 -debug: Added true#0 to Phi node: let true#6: uint64 = φ(true#0 <- block@16) in block@16: // ternary_true_L60 -debug: Added true#0 to Phi node: let true#6: uint64 = φ(true#0 <- block@16, true#0 <- block@17) in block@17: // ternary_false_L60 +debug: Added true#0 to Phi node: let true#6: uint64 = Phi(true#0 <- block@16) in block@16: // ternary_true_L60 +debug: Added true#0 to Phi node: let true#6: uint64 = Phi(true#0 <- block@16, true#0 <- block@17) in block@17: // ternary_false_L60 debug: Replacing trivial Phi node: let true#6: uint64 = φ(true#0 <- block@16, true#0 <- block@17) (true#6) with true#0 debug: Deleting Phi assignment: let true#6: uint64 = φ(true#0 <- block@16, true#0 <- block@17) debug: Replaced trivial Phi node: let true#6: uint64 = φ(true#0 <- block@16, true#0 <- block@17) (true#6) with true#0 in current definition for 1 blocks debug: Created Phi assignment: let false#6: uint64 = undefined while trying to resolve 'false' in block@18: // ternary_merge_L60 -debug: Added false#0 to Phi node: let false#6: uint64 = φ(false#0 <- block@16) in block@16: // ternary_true_L60 -debug: Added false#0 to Phi node: let false#6: uint64 = φ(false#0 <- block@16, false#0 <- block@17) in block@17: // ternary_false_L60 +debug: Added false#0 to Phi node: let false#6: uint64 = Phi(false#0 <- block@16) in block@16: // ternary_true_L60 +debug: Added false#0 to Phi node: let false#6: uint64 = Phi(false#0 <- block@16, false#0 <- block@17) in block@17: // ternary_false_L60 debug: Replacing trivial Phi node: let false#6: uint64 = φ(false#0 <- block@16, false#0 <- block@17) (false#6) with false#0 debug: Deleting Phi assignment: let false#6: uint64 = φ(false#0 <- block@16, false#0 <- block@17) debug: Replaced trivial Phi node: let false#6: uint64 = φ(false#0 <- block@16, false#0 <- block@17) (false#6) with false#0 in current definition for 1 blocks @@ -139,17 +139,17 @@ debug: Terminated block@19: // ternary_true_L61 debug: Terminated block@20: // ternary_false_L61 debug: Sealing block@21: // ternary_merge_L61 debug: Created Phi assignment: let ternary_result%39#2: uint64 = undefined while trying to resolve 'ternary_result%39' in block@21: // ternary_merge_L61 -debug: Added ternary_result%39#0 to Phi node: let ternary_result%39#2: uint64 = φ(ternary_result%39#0 <- block@19) in block@19: // ternary_true_L61 -debug: Added ternary_result%39#1 to Phi node: let ternary_result%39#2: uint64 = φ(ternary_result%39#0 <- block@19, ternary_result%39#1 <- block@20) in block@20: // ternary_false_L61 +debug: Added ternary_result%39#0 to Phi node: let ternary_result%39#2: uint64 = Phi(ternary_result%39#0 <- block@19) in block@19: // ternary_true_L61 +debug: Added ternary_result%39#1 to Phi node: let ternary_result%39#2: uint64 = Phi(ternary_result%39#0 <- block@19, ternary_result%39#1 <- block@20) in block@20: // ternary_false_L61 debug: Created Phi assignment: let true#7: uint64 = undefined while trying to resolve 'true' in block@21: // ternary_merge_L61 -debug: Added true#0 to Phi node: let true#7: uint64 = φ(true#0 <- block@19) in block@19: // ternary_true_L61 -debug: Added true#0 to Phi node: let true#7: uint64 = φ(true#0 <- block@19, true#0 <- block@20) in block@20: // ternary_false_L61 +debug: Added true#0 to Phi node: let true#7: uint64 = Phi(true#0 <- block@19) in block@19: // ternary_true_L61 +debug: Added true#0 to Phi node: let true#7: uint64 = Phi(true#0 <- block@19, true#0 <- block@20) in block@20: // ternary_false_L61 debug: Replacing trivial Phi node: let true#7: uint64 = φ(true#0 <- block@19, true#0 <- block@20) (true#7) with true#0 debug: Deleting Phi assignment: let true#7: uint64 = φ(true#0 <- block@19, true#0 <- block@20) debug: Replaced trivial Phi node: let true#7: uint64 = φ(true#0 <- block@19, true#0 <- block@20) (true#7) with true#0 in current definition for 1 blocks debug: Created Phi assignment: let false#7: uint64 = undefined while trying to resolve 'false' in block@21: // ternary_merge_L61 -debug: Added false#0 to Phi node: let false#7: uint64 = φ(false#0 <- block@19) in block@19: // ternary_true_L61 -debug: Added false#0 to Phi node: let false#7: uint64 = φ(false#0 <- block@19, false#0 <- block@20) in block@20: // ternary_false_L61 +debug: Added false#0 to Phi node: let false#7: uint64 = Phi(false#0 <- block@19) in block@19: // ternary_true_L61 +debug: Added false#0 to Phi node: let false#7: uint64 = Phi(false#0 <- block@19, false#0 <- block@20) in block@20: // ternary_false_L61 debug: Replacing trivial Phi node: let false#7: uint64 = φ(false#0 <- block@19, false#0 <- block@20) (false#7) with false#0 debug: Deleting Phi assignment: let false#7: uint64 = φ(false#0 <- block@19, false#0 <- block@20) debug: Replaced trivial Phi node: let false#7: uint64 = φ(false#0 <- block@19, false#0 <- block@20) (false#7) with false#0 in current definition for 1 blocks @@ -160,11 +160,11 @@ debug: Terminated block@22: // ternary_true_L62 debug: Terminated block@23: // ternary_false_L62 debug: Sealing block@24: // ternary_merge_L62 debug: Created Phi assignment: let ternary_result%41#2: uint64 = undefined while trying to resolve 'ternary_result%41' in block@24: // ternary_merge_L62 -debug: Added ternary_result%41#0 to Phi node: let ternary_result%41#2: uint64 = φ(ternary_result%41#0 <- block@22) in block@22: // ternary_true_L62 -debug: Added ternary_result%41#1 to Phi node: let ternary_result%41#2: uint64 = φ(ternary_result%41#0 <- block@22, ternary_result%41#1 <- block@23) in block@23: // ternary_false_L62 +debug: Added ternary_result%41#0 to Phi node: let ternary_result%41#2: uint64 = Phi(ternary_result%41#0 <- block@22) in block@22: // ternary_true_L62 +debug: Added ternary_result%41#1 to Phi node: let ternary_result%41#2: uint64 = Phi(ternary_result%41#0 <- block@22, ternary_result%41#1 <- block@23) in block@23: // ternary_false_L62 debug: Created Phi assignment: let false#8: uint64 = undefined while trying to resolve 'false' in block@24: // ternary_merge_L62 -debug: Added false#0 to Phi node: let false#8: uint64 = φ(false#0 <- block@22) in block@22: // ternary_true_L62 -debug: Added false#0 to Phi node: let false#8: uint64 = φ(false#0 <- block@22, false#0 <- block@23) in block@23: // ternary_false_L62 +debug: Added false#0 to Phi node: let false#8: uint64 = Phi(false#0 <- block@22) in block@22: // ternary_true_L62 +debug: Added false#0 to Phi node: let false#8: uint64 = Phi(false#0 <- block@22, false#0 <- block@23) in block@23: // ternary_false_L62 debug: Replacing trivial Phi node: let false#8: uint64 = φ(false#0 <- block@22, false#0 <- block@23) (false#8) with false#0 debug: Deleting Phi assignment: let false#8: uint64 = φ(false#0 <- block@22, false#0 <- block@23) debug: Replaced trivial Phi node: let false#8: uint64 = φ(false#0 <- block@22, false#0 <- block@23) (false#8) with false#0 in current definition for 1 blocks @@ -176,43 +176,43 @@ debug: Created Phi assignment: let one#5: uint64 = undefined while trying to res debug: Created Phi assignment: let one#6: uint64 = undefined while trying to resolve 'one' in block@9: // ternary_merge_L57 debug: Created Phi assignment: let one#7: uint64 = undefined while trying to resolve 'one' in block@6: // ternary_merge_L56 debug: Created Phi assignment: let one#8: uint64 = undefined while trying to resolve 'one' in block@3: // ternary_merge_L55 -debug: Added one#0 to Phi node: let one#8: uint64 = φ(one#0 <- block@1) in block@1: // ternary_true_L55 -debug: Added one#0 to Phi node: let one#8: uint64 = φ(one#0 <- block@1, one#0 <- block@2) in block@2: // ternary_false_L55 +debug: Added one#0 to Phi node: let one#8: uint64 = Phi(one#0 <- block@1) in block@1: // ternary_true_L55 +debug: Added one#0 to Phi node: let one#8: uint64 = Phi(one#0 <- block@1, one#0 <- block@2) in block@2: // ternary_false_L55 debug: Replacing trivial Phi node: let one#8: uint64 = φ(one#0 <- block@1, one#0 <- block@2) (one#8) with one#0 debug: Deleting Phi assignment: let one#8: uint64 = φ(one#0 <- block@1, one#0 <- block@2) debug: Replaced trivial Phi node: let one#8: uint64 = φ(one#0 <- block@1, one#0 <- block@2) (one#8) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#7: uint64 = φ(one#0 <- block@4) in block@4: // ternary_true_L56 -debug: Added one#0 to Phi node: let one#7: uint64 = φ(one#0 <- block@4, one#0 <- block@5) in block@5: // ternary_false_L56 +debug: Added one#0 to Phi node: let one#7: uint64 = Phi(one#0 <- block@4) in block@4: // ternary_true_L56 +debug: Added one#0 to Phi node: let one#7: uint64 = Phi(one#0 <- block@4, one#0 <- block@5) in block@5: // ternary_false_L56 debug: Replacing trivial Phi node: let one#7: uint64 = φ(one#0 <- block@4, one#0 <- block@5) (one#7) with one#0 debug: Deleting Phi assignment: let one#7: uint64 = φ(one#0 <- block@4, one#0 <- block@5) debug: Replaced trivial Phi node: let one#7: uint64 = φ(one#0 <- block@4, one#0 <- block@5) (one#7) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#6: uint64 = φ(one#0 <- block@7) in block@7: // ternary_true_L57 -debug: Added one#0 to Phi node: let one#6: uint64 = φ(one#0 <- block@7, one#0 <- block@8) in block@8: // ternary_false_L57 +debug: Added one#0 to Phi node: let one#6: uint64 = Phi(one#0 <- block@7) in block@7: // ternary_true_L57 +debug: Added one#0 to Phi node: let one#6: uint64 = Phi(one#0 <- block@7, one#0 <- block@8) in block@8: // ternary_false_L57 debug: Replacing trivial Phi node: let one#6: uint64 = φ(one#0 <- block@7, one#0 <- block@8) (one#6) with one#0 debug: Deleting Phi assignment: let one#6: uint64 = φ(one#0 <- block@7, one#0 <- block@8) debug: Replaced trivial Phi node: let one#6: uint64 = φ(one#0 <- block@7, one#0 <- block@8) (one#6) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#5: uint64 = φ(one#0 <- block@10) in block@10: // ternary_true_L58 -debug: Added one#0 to Phi node: let one#5: uint64 = φ(one#0 <- block@10, one#0 <- block@11) in block@11: // ternary_false_L58 +debug: Added one#0 to Phi node: let one#5: uint64 = Phi(one#0 <- block@10) in block@10: // ternary_true_L58 +debug: Added one#0 to Phi node: let one#5: uint64 = Phi(one#0 <- block@10, one#0 <- block@11) in block@11: // ternary_false_L58 debug: Replacing trivial Phi node: let one#5: uint64 = φ(one#0 <- block@10, one#0 <- block@11) (one#5) with one#0 debug: Deleting Phi assignment: let one#5: uint64 = φ(one#0 <- block@10, one#0 <- block@11) debug: Replaced trivial Phi node: let one#5: uint64 = φ(one#0 <- block@10, one#0 <- block@11) (one#5) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#4: uint64 = φ(one#0 <- block@13) in block@13: // ternary_true_L59 -debug: Added one#0 to Phi node: let one#4: uint64 = φ(one#0 <- block@13, one#0 <- block@14) in block@14: // ternary_false_L59 +debug: Added one#0 to Phi node: let one#4: uint64 = Phi(one#0 <- block@13) in block@13: // ternary_true_L59 +debug: Added one#0 to Phi node: let one#4: uint64 = Phi(one#0 <- block@13, one#0 <- block@14) in block@14: // ternary_false_L59 debug: Replacing trivial Phi node: let one#4: uint64 = φ(one#0 <- block@13, one#0 <- block@14) (one#4) with one#0 debug: Deleting Phi assignment: let one#4: uint64 = φ(one#0 <- block@13, one#0 <- block@14) debug: Replaced trivial Phi node: let one#4: uint64 = φ(one#0 <- block@13, one#0 <- block@14) (one#4) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#3: uint64 = φ(one#0 <- block@16) in block@16: // ternary_true_L60 -debug: Added one#0 to Phi node: let one#3: uint64 = φ(one#0 <- block@16, one#0 <- block@17) in block@17: // ternary_false_L60 +debug: Added one#0 to Phi node: let one#3: uint64 = Phi(one#0 <- block@16) in block@16: // ternary_true_L60 +debug: Added one#0 to Phi node: let one#3: uint64 = Phi(one#0 <- block@16, one#0 <- block@17) in block@17: // ternary_false_L60 debug: Replacing trivial Phi node: let one#3: uint64 = φ(one#0 <- block@16, one#0 <- block@17) (one#3) with one#0 debug: Deleting Phi assignment: let one#3: uint64 = φ(one#0 <- block@16, one#0 <- block@17) debug: Replaced trivial Phi node: let one#3: uint64 = φ(one#0 <- block@16, one#0 <- block@17) (one#3) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#2: uint64 = φ(one#0 <- block@19) in block@19: // ternary_true_L61 -debug: Added one#0 to Phi node: let one#2: uint64 = φ(one#0 <- block@19, one#0 <- block@20) in block@20: // ternary_false_L61 +debug: Added one#0 to Phi node: let one#2: uint64 = Phi(one#0 <- block@19) in block@19: // ternary_true_L61 +debug: Added one#0 to Phi node: let one#2: uint64 = Phi(one#0 <- block@19, one#0 <- block@20) in block@20: // ternary_false_L61 debug: Replacing trivial Phi node: let one#2: uint64 = φ(one#0 <- block@19, one#0 <- block@20) (one#2) with one#0 debug: Deleting Phi assignment: let one#2: uint64 = φ(one#0 <- block@19, one#0 <- block@20) debug: Replaced trivial Phi node: let one#2: uint64 = φ(one#0 <- block@19, one#0 <- block@20) (one#2) with one#0 in current definition for 1 blocks -debug: Added one#0 to Phi node: let one#1: uint64 = φ(one#0 <- block@22) in block@22: // ternary_true_L62 -debug: Added one#0 to Phi node: let one#1: uint64 = φ(one#0 <- block@22, one#0 <- block@23) in block@23: // ternary_false_L62 +debug: Added one#0 to Phi node: let one#1: uint64 = Phi(one#0 <- block@22) in block@22: // ternary_true_L62 +debug: Added one#0 to Phi node: let one#1: uint64 = Phi(one#0 <- block@22, one#0 <- block@23) in block@23: // ternary_false_L62 debug: Replacing trivial Phi node: let one#1: uint64 = φ(one#0 <- block@22, one#0 <- block@23) (one#1) with one#0 debug: Deleting Phi assignment: let one#1: uint64 = φ(one#0 <- block@22, one#0 <- block@23) debug: Replaced trivial Phi node: let one#1: uint64 = φ(one#0 <- block@22, one#0 <- block@23) (one#1) with one#0 in current definition for 1 blocks @@ -224,43 +224,43 @@ debug: Created Phi assignment: let five#5: uint64 = undefined while trying to re debug: Created Phi assignment: let five#6: uint64 = undefined while trying to resolve 'five' in block@9: // ternary_merge_L57 debug: Created Phi assignment: let five#7: uint64 = undefined while trying to resolve 'five' in block@6: // ternary_merge_L56 debug: Created Phi assignment: let five#8: uint64 = undefined while trying to resolve 'five' in block@3: // ternary_merge_L55 -debug: Added five#0 to Phi node: let five#8: uint64 = φ(five#0 <- block@1) in block@1: // ternary_true_L55 -debug: Added five#0 to Phi node: let five#8: uint64 = φ(five#0 <- block@1, five#0 <- block@2) in block@2: // ternary_false_L55 +debug: Added five#0 to Phi node: let five#8: uint64 = Phi(five#0 <- block@1) in block@1: // ternary_true_L55 +debug: Added five#0 to Phi node: let five#8: uint64 = Phi(five#0 <- block@1, five#0 <- block@2) in block@2: // ternary_false_L55 debug: Replacing trivial Phi node: let five#8: uint64 = φ(five#0 <- block@1, five#0 <- block@2) (five#8) with five#0 debug: Deleting Phi assignment: let five#8: uint64 = φ(five#0 <- block@1, five#0 <- block@2) debug: Replaced trivial Phi node: let five#8: uint64 = φ(five#0 <- block@1, five#0 <- block@2) (five#8) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#7: uint64 = φ(five#0 <- block@4) in block@4: // ternary_true_L56 -debug: Added five#0 to Phi node: let five#7: uint64 = φ(five#0 <- block@4, five#0 <- block@5) in block@5: // ternary_false_L56 +debug: Added five#0 to Phi node: let five#7: uint64 = Phi(five#0 <- block@4) in block@4: // ternary_true_L56 +debug: Added five#0 to Phi node: let five#7: uint64 = Phi(five#0 <- block@4, five#0 <- block@5) in block@5: // ternary_false_L56 debug: Replacing trivial Phi node: let five#7: uint64 = φ(five#0 <- block@4, five#0 <- block@5) (five#7) with five#0 debug: Deleting Phi assignment: let five#7: uint64 = φ(five#0 <- block@4, five#0 <- block@5) debug: Replaced trivial Phi node: let five#7: uint64 = φ(five#0 <- block@4, five#0 <- block@5) (five#7) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#6: uint64 = φ(five#0 <- block@7) in block@7: // ternary_true_L57 -debug: Added five#0 to Phi node: let five#6: uint64 = φ(five#0 <- block@7, five#0 <- block@8) in block@8: // ternary_false_L57 +debug: Added five#0 to Phi node: let five#6: uint64 = Phi(five#0 <- block@7) in block@7: // ternary_true_L57 +debug: Added five#0 to Phi node: let five#6: uint64 = Phi(five#0 <- block@7, five#0 <- block@8) in block@8: // ternary_false_L57 debug: Replacing trivial Phi node: let five#6: uint64 = φ(five#0 <- block@7, five#0 <- block@8) (five#6) with five#0 debug: Deleting Phi assignment: let five#6: uint64 = φ(five#0 <- block@7, five#0 <- block@8) debug: Replaced trivial Phi node: let five#6: uint64 = φ(five#0 <- block@7, five#0 <- block@8) (five#6) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#5: uint64 = φ(five#0 <- block@10) in block@10: // ternary_true_L58 -debug: Added five#0 to Phi node: let five#5: uint64 = φ(five#0 <- block@10, five#0 <- block@11) in block@11: // ternary_false_L58 +debug: Added five#0 to Phi node: let five#5: uint64 = Phi(five#0 <- block@10) in block@10: // ternary_true_L58 +debug: Added five#0 to Phi node: let five#5: uint64 = Phi(five#0 <- block@10, five#0 <- block@11) in block@11: // ternary_false_L58 debug: Replacing trivial Phi node: let five#5: uint64 = φ(five#0 <- block@10, five#0 <- block@11) (five#5) with five#0 debug: Deleting Phi assignment: let five#5: uint64 = φ(five#0 <- block@10, five#0 <- block@11) debug: Replaced trivial Phi node: let five#5: uint64 = φ(five#0 <- block@10, five#0 <- block@11) (five#5) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#4: uint64 = φ(five#0 <- block@13) in block@13: // ternary_true_L59 -debug: Added five#0 to Phi node: let five#4: uint64 = φ(five#0 <- block@13, five#0 <- block@14) in block@14: // ternary_false_L59 +debug: Added five#0 to Phi node: let five#4: uint64 = Phi(five#0 <- block@13) in block@13: // ternary_true_L59 +debug: Added five#0 to Phi node: let five#4: uint64 = Phi(five#0 <- block@13, five#0 <- block@14) in block@14: // ternary_false_L59 debug: Replacing trivial Phi node: let five#4: uint64 = φ(five#0 <- block@13, five#0 <- block@14) (five#4) with five#0 debug: Deleting Phi assignment: let five#4: uint64 = φ(five#0 <- block@13, five#0 <- block@14) debug: Replaced trivial Phi node: let five#4: uint64 = φ(five#0 <- block@13, five#0 <- block@14) (five#4) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#3: uint64 = φ(five#0 <- block@16) in block@16: // ternary_true_L60 -debug: Added five#0 to Phi node: let five#3: uint64 = φ(five#0 <- block@16, five#0 <- block@17) in block@17: // ternary_false_L60 +debug: Added five#0 to Phi node: let five#3: uint64 = Phi(five#0 <- block@16) in block@16: // ternary_true_L60 +debug: Added five#0 to Phi node: let five#3: uint64 = Phi(five#0 <- block@16, five#0 <- block@17) in block@17: // ternary_false_L60 debug: Replacing trivial Phi node: let five#3: uint64 = φ(five#0 <- block@16, five#0 <- block@17) (five#3) with five#0 debug: Deleting Phi assignment: let five#3: uint64 = φ(five#0 <- block@16, five#0 <- block@17) debug: Replaced trivial Phi node: let five#3: uint64 = φ(five#0 <- block@16, five#0 <- block@17) (five#3) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#2: uint64 = φ(five#0 <- block@19) in block@19: // ternary_true_L61 -debug: Added five#0 to Phi node: let five#2: uint64 = φ(five#0 <- block@19, five#0 <- block@20) in block@20: // ternary_false_L61 +debug: Added five#0 to Phi node: let five#2: uint64 = Phi(five#0 <- block@19) in block@19: // ternary_true_L61 +debug: Added five#0 to Phi node: let five#2: uint64 = Phi(five#0 <- block@19, five#0 <- block@20) in block@20: // ternary_false_L61 debug: Replacing trivial Phi node: let five#2: uint64 = φ(five#0 <- block@19, five#0 <- block@20) (five#2) with five#0 debug: Deleting Phi assignment: let five#2: uint64 = φ(five#0 <- block@19, five#0 <- block@20) debug: Replaced trivial Phi node: let five#2: uint64 = φ(five#0 <- block@19, five#0 <- block@20) (five#2) with five#0 in current definition for 1 blocks -debug: Added five#0 to Phi node: let five#1: uint64 = φ(five#0 <- block@22) in block@22: // ternary_true_L62 -debug: Added five#0 to Phi node: let five#1: uint64 = φ(five#0 <- block@22, five#0 <- block@23) in block@23: // ternary_false_L62 +debug: Added five#0 to Phi node: let five#1: uint64 = Phi(five#0 <- block@22) in block@22: // ternary_true_L62 +debug: Added five#0 to Phi node: let five#1: uint64 = Phi(five#0 <- block@22, five#0 <- block@23) in block@23: // ternary_false_L62 debug: Replacing trivial Phi node: let five#1: uint64 = φ(five#0 <- block@22, five#0 <- block@23) (five#1) with five#0 debug: Deleting Phi assignment: let five#1: uint64 = φ(five#0 <- block@22, five#0 <- block@23) debug: Replaced trivial Phi node: let five#1: uint64 = φ(five#0 <- block@22, five#0 <- block@23) (five#1) with five#0 in current definition for 1 blocks @@ -272,43 +272,43 @@ debug: Created Phi assignment: let sixty#5: uint64 = undefined while trying to r debug: Created Phi assignment: let sixty#6: uint64 = undefined while trying to resolve 'sixty' in block@9: // ternary_merge_L57 debug: Created Phi assignment: let sixty#7: uint64 = undefined while trying to resolve 'sixty' in block@6: // ternary_merge_L56 debug: Created Phi assignment: let sixty#8: uint64 = undefined while trying to resolve 'sixty' in block@3: // ternary_merge_L55 -debug: Added sixty#0 to Phi node: let sixty#8: uint64 = φ(sixty#0 <- block@1) in block@1: // ternary_true_L55 -debug: Added sixty#0 to Phi node: let sixty#8: uint64 = φ(sixty#0 <- block@1, sixty#0 <- block@2) in block@2: // ternary_false_L55 +debug: Added sixty#0 to Phi node: let sixty#8: uint64 = Phi(sixty#0 <- block@1) in block@1: // ternary_true_L55 +debug: Added sixty#0 to Phi node: let sixty#8: uint64 = Phi(sixty#0 <- block@1, sixty#0 <- block@2) in block@2: // ternary_false_L55 debug: Replacing trivial Phi node: let sixty#8: uint64 = φ(sixty#0 <- block@1, sixty#0 <- block@2) (sixty#8) with sixty#0 debug: Deleting Phi assignment: let sixty#8: uint64 = φ(sixty#0 <- block@1, sixty#0 <- block@2) debug: Replaced trivial Phi node: let sixty#8: uint64 = φ(sixty#0 <- block@1, sixty#0 <- block@2) (sixty#8) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#7: uint64 = φ(sixty#0 <- block@4) in block@4: // ternary_true_L56 -debug: Added sixty#0 to Phi node: let sixty#7: uint64 = φ(sixty#0 <- block@4, sixty#0 <- block@5) in block@5: // ternary_false_L56 +debug: Added sixty#0 to Phi node: let sixty#7: uint64 = Phi(sixty#0 <- block@4) in block@4: // ternary_true_L56 +debug: Added sixty#0 to Phi node: let sixty#7: uint64 = Phi(sixty#0 <- block@4, sixty#0 <- block@5) in block@5: // ternary_false_L56 debug: Replacing trivial Phi node: let sixty#7: uint64 = φ(sixty#0 <- block@4, sixty#0 <- block@5) (sixty#7) with sixty#0 debug: Deleting Phi assignment: let sixty#7: uint64 = φ(sixty#0 <- block@4, sixty#0 <- block@5) debug: Replaced trivial Phi node: let sixty#7: uint64 = φ(sixty#0 <- block@4, sixty#0 <- block@5) (sixty#7) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#6: uint64 = φ(sixty#0 <- block@7) in block@7: // ternary_true_L57 -debug: Added sixty#0 to Phi node: let sixty#6: uint64 = φ(sixty#0 <- block@7, sixty#0 <- block@8) in block@8: // ternary_false_L57 +debug: Added sixty#0 to Phi node: let sixty#6: uint64 = Phi(sixty#0 <- block@7) in block@7: // ternary_true_L57 +debug: Added sixty#0 to Phi node: let sixty#6: uint64 = Phi(sixty#0 <- block@7, sixty#0 <- block@8) in block@8: // ternary_false_L57 debug: Replacing trivial Phi node: let sixty#6: uint64 = φ(sixty#0 <- block@7, sixty#0 <- block@8) (sixty#6) with sixty#0 debug: Deleting Phi assignment: let sixty#6: uint64 = φ(sixty#0 <- block@7, sixty#0 <- block@8) debug: Replaced trivial Phi node: let sixty#6: uint64 = φ(sixty#0 <- block@7, sixty#0 <- block@8) (sixty#6) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#5: uint64 = φ(sixty#0 <- block@10) in block@10: // ternary_true_L58 -debug: Added sixty#0 to Phi node: let sixty#5: uint64 = φ(sixty#0 <- block@10, sixty#0 <- block@11) in block@11: // ternary_false_L58 +debug: Added sixty#0 to Phi node: let sixty#5: uint64 = Phi(sixty#0 <- block@10) in block@10: // ternary_true_L58 +debug: Added sixty#0 to Phi node: let sixty#5: uint64 = Phi(sixty#0 <- block@10, sixty#0 <- block@11) in block@11: // ternary_false_L58 debug: Replacing trivial Phi node: let sixty#5: uint64 = φ(sixty#0 <- block@10, sixty#0 <- block@11) (sixty#5) with sixty#0 debug: Deleting Phi assignment: let sixty#5: uint64 = φ(sixty#0 <- block@10, sixty#0 <- block@11) debug: Replaced trivial Phi node: let sixty#5: uint64 = φ(sixty#0 <- block@10, sixty#0 <- block@11) (sixty#5) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#4: uint64 = φ(sixty#0 <- block@13) in block@13: // ternary_true_L59 -debug: Added sixty#0 to Phi node: let sixty#4: uint64 = φ(sixty#0 <- block@13, sixty#0 <- block@14) in block@14: // ternary_false_L59 +debug: Added sixty#0 to Phi node: let sixty#4: uint64 = Phi(sixty#0 <- block@13) in block@13: // ternary_true_L59 +debug: Added sixty#0 to Phi node: let sixty#4: uint64 = Phi(sixty#0 <- block@13, sixty#0 <- block@14) in block@14: // ternary_false_L59 debug: Replacing trivial Phi node: let sixty#4: uint64 = φ(sixty#0 <- block@13, sixty#0 <- block@14) (sixty#4) with sixty#0 debug: Deleting Phi assignment: let sixty#4: uint64 = φ(sixty#0 <- block@13, sixty#0 <- block@14) debug: Replaced trivial Phi node: let sixty#4: uint64 = φ(sixty#0 <- block@13, sixty#0 <- block@14) (sixty#4) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#3: uint64 = φ(sixty#0 <- block@16) in block@16: // ternary_true_L60 -debug: Added sixty#0 to Phi node: let sixty#3: uint64 = φ(sixty#0 <- block@16, sixty#0 <- block@17) in block@17: // ternary_false_L60 +debug: Added sixty#0 to Phi node: let sixty#3: uint64 = Phi(sixty#0 <- block@16) in block@16: // ternary_true_L60 +debug: Added sixty#0 to Phi node: let sixty#3: uint64 = Phi(sixty#0 <- block@16, sixty#0 <- block@17) in block@17: // ternary_false_L60 debug: Replacing trivial Phi node: let sixty#3: uint64 = φ(sixty#0 <- block@16, sixty#0 <- block@17) (sixty#3) with sixty#0 debug: Deleting Phi assignment: let sixty#3: uint64 = φ(sixty#0 <- block@16, sixty#0 <- block@17) debug: Replaced trivial Phi node: let sixty#3: uint64 = φ(sixty#0 <- block@16, sixty#0 <- block@17) (sixty#3) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#2: uint64 = φ(sixty#0 <- block@19) in block@19: // ternary_true_L61 -debug: Added sixty#0 to Phi node: let sixty#2: uint64 = φ(sixty#0 <- block@19, sixty#0 <- block@20) in block@20: // ternary_false_L61 +debug: Added sixty#0 to Phi node: let sixty#2: uint64 = Phi(sixty#0 <- block@19) in block@19: // ternary_true_L61 +debug: Added sixty#0 to Phi node: let sixty#2: uint64 = Phi(sixty#0 <- block@19, sixty#0 <- block@20) in block@20: // ternary_false_L61 debug: Replacing trivial Phi node: let sixty#2: uint64 = φ(sixty#0 <- block@19, sixty#0 <- block@20) (sixty#2) with sixty#0 debug: Deleting Phi assignment: let sixty#2: uint64 = φ(sixty#0 <- block@19, sixty#0 <- block@20) debug: Replaced trivial Phi node: let sixty#2: uint64 = φ(sixty#0 <- block@19, sixty#0 <- block@20) (sixty#2) with sixty#0 in current definition for 1 blocks -debug: Added sixty#0 to Phi node: let sixty#1: uint64 = φ(sixty#0 <- block@22) in block@22: // ternary_true_L62 -debug: Added sixty#0 to Phi node: let sixty#1: uint64 = φ(sixty#0 <- block@22, sixty#0 <- block@23) in block@23: // ternary_false_L62 +debug: Added sixty#0 to Phi node: let sixty#1: uint64 = Phi(sixty#0 <- block@22) in block@22: // ternary_true_L62 +debug: Added sixty#0 to Phi node: let sixty#1: uint64 = Phi(sixty#0 <- block@22, sixty#0 <- block@23) in block@23: // ternary_false_L62 debug: Replacing trivial Phi node: let sixty#1: uint64 = φ(sixty#0 <- block@22, sixty#0 <- block@23) (sixty#1) with sixty#0 debug: Deleting Phi assignment: let sixty#1: uint64 = φ(sixty#0 <- block@22, sixty#0 <- block@23) debug: Replaced trivial Phi node: let sixty#1: uint64 = φ(sixty#0 <- block@22, sixty#0 <- block@23) (sixty#1) with sixty#0 in current definition for 1 blocks @@ -323,11 +323,11 @@ debug: Terminated block@1: // ternary_true_L26 debug: Terminated block@2: // ternary_false_L26 debug: Sealing block@3: // ternary_merge_L26 debug: Created Phi assignment: let ternary_result%13#2: uint64 = undefined while trying to resolve 'ternary_result%13' in block@3: // ternary_merge_L26 -debug: Added ternary_result%13#0 to Phi node: let ternary_result%13#2: uint64 = φ(ternary_result%13#0 <- block@1) in block@1: // ternary_true_L26 -debug: Added ternary_result%13#1 to Phi node: let ternary_result%13#2: uint64 = φ(ternary_result%13#0 <- block@1, ternary_result%13#1 <- block@2) in block@2: // ternary_false_L26 +debug: Added ternary_result%13#0 to Phi node: let ternary_result%13#2: uint64 = Phi(ternary_result%13#0 <- block@1) in block@1: // ternary_true_L26 +debug: Added ternary_result%13#1 to Phi node: let ternary_result%13#2: uint64 = Phi(ternary_result%13#0 <- block@1, ternary_result%13#1 <- block@2) in block@2: // ternary_false_L26 debug: Created Phi assignment: let abc#1: bytes = undefined while trying to resolve 'abc' in block@3: // ternary_merge_L26 -debug: Added abc#0 to Phi node: let abc#1: bytes = φ(abc#0 <- block@1) in block@1: // ternary_true_L26 -debug: Added abc#0 to Phi node: let abc#1: bytes = φ(abc#0 <- block@1, abc#0 <- block@2) in block@2: // ternary_false_L26 +debug: Added abc#0 to Phi node: let abc#1: bytes = Phi(abc#0 <- block@1) in block@1: // ternary_true_L26 +debug: Added abc#0 to Phi node: let abc#1: bytes = Phi(abc#0 <- block@1, abc#0 <- block@2) in block@2: // ternary_false_L26 debug: Replacing trivial Phi node: let abc#1: bytes = φ(abc#0 <- block@1, abc#0 <- block@2) (abc#1) with abc#0 debug: Deleting Phi assignment: let abc#1: bytes = φ(abc#0 <- block@1, abc#0 <- block@2) debug: Replaced trivial Phi node: let abc#1: bytes = φ(abc#0 <- block@1, abc#0 <- block@2) (abc#1) with abc#0 in current definition for 1 blocks @@ -338,11 +338,11 @@ debug: Terminated block@4: // ternary_true_L27 debug: Terminated block@5: // ternary_false_L27 debug: Sealing block@6: // ternary_merge_L27 debug: Created Phi assignment: let ternary_result%19#2: uint64 = undefined while trying to resolve 'ternary_result%19' in block@6: // ternary_merge_L27 -debug: Added ternary_result%19#0 to Phi node: let ternary_result%19#2: uint64 = φ(ternary_result%19#0 <- block@4) in block@4: // ternary_true_L27 -debug: Added ternary_result%19#1 to Phi node: let ternary_result%19#2: uint64 = φ(ternary_result%19#0 <- block@4, ternary_result%19#1 <- block@5) in block@5: // ternary_false_L27 +debug: Added ternary_result%19#0 to Phi node: let ternary_result%19#2: uint64 = Phi(ternary_result%19#0 <- block@4) in block@4: // ternary_true_L27 +debug: Added ternary_result%19#1 to Phi node: let ternary_result%19#2: uint64 = Phi(ternary_result%19#0 <- block@4, ternary_result%19#1 <- block@5) in block@5: // ternary_false_L27 debug: Created Phi assignment: let abc#2: bytes = undefined while trying to resolve 'abc' in block@6: // ternary_merge_L27 -debug: Added abc#0 to Phi node: let abc#2: bytes = φ(abc#0 <- block@4) in block@4: // ternary_true_L27 -debug: Added abc#0 to Phi node: let abc#2: bytes = φ(abc#0 <- block@4, abc#0 <- block@5) in block@5: // ternary_false_L27 +debug: Added abc#0 to Phi node: let abc#2: bytes = Phi(abc#0 <- block@4) in block@4: // ternary_true_L27 +debug: Added abc#0 to Phi node: let abc#2: bytes = Phi(abc#0 <- block@4, abc#0 <- block@5) in block@5: // ternary_false_L27 debug: Replacing trivial Phi node: let abc#2: bytes = φ(abc#0 <- block@4, abc#0 <- block@5) (abc#2) with abc#0 debug: Deleting Phi assignment: let abc#2: bytes = φ(abc#0 <- block@4, abc#0 <- block@5) debug: Replaced trivial Phi node: let abc#2: bytes = φ(abc#0 <- block@4, abc#0 <- block@5) (abc#2) with abc#0 in current definition for 1 blocks @@ -353,11 +353,11 @@ debug: Terminated block@7: // ternary_true_L27 debug: Terminated block@8: // ternary_false_L27 debug: Sealing block@9: // ternary_merge_L27 debug: Created Phi assignment: let ternary_result%21#2: uint64 = undefined while trying to resolve 'ternary_result%21' in block@9: // ternary_merge_L27 -debug: Added ternary_result%21#0 to Phi node: let ternary_result%21#2: uint64 = φ(ternary_result%21#0 <- block@7) in block@7: // ternary_true_L27 -debug: Added ternary_result%21#1 to Phi node: let ternary_result%21#2: uint64 = φ(ternary_result%21#0 <- block@7, ternary_result%21#1 <- block@8) in block@8: // ternary_false_L27 +debug: Added ternary_result%21#0 to Phi node: let ternary_result%21#2: uint64 = Phi(ternary_result%21#0 <- block@7) in block@7: // ternary_true_L27 +debug: Added ternary_result%21#1 to Phi node: let ternary_result%21#2: uint64 = Phi(ternary_result%21#0 <- block@7, ternary_result%21#1 <- block@8) in block@8: // ternary_false_L27 debug: Created Phi assignment: let abc#3: bytes = undefined while trying to resolve 'abc' in block@9: // ternary_merge_L27 -debug: Added abc#0 to Phi node: let abc#3: bytes = φ(abc#0 <- block@7) in block@7: // ternary_true_L27 -debug: Added abc#0 to Phi node: let abc#3: bytes = φ(abc#0 <- block@7, abc#0 <- block@8) in block@8: // ternary_false_L27 +debug: Added abc#0 to Phi node: let abc#3: bytes = Phi(abc#0 <- block@7) in block@7: // ternary_true_L27 +debug: Added abc#0 to Phi node: let abc#3: bytes = Phi(abc#0 <- block@7, abc#0 <- block@8) in block@8: // ternary_false_L27 debug: Replacing trivial Phi node: let abc#3: bytes = φ(abc#0 <- block@7, abc#0 <- block@8) (abc#3) with abc#0 debug: Deleting Phi assignment: let abc#3: bytes = φ(abc#0 <- block@7, abc#0 <- block@8) debug: Replaced trivial Phi node: let abc#3: bytes = φ(abc#0 <- block@7, abc#0 <- block@8) (abc#3) with abc#0 in current definition for 1 blocks @@ -368,11 +368,11 @@ debug: Terminated block@10: // ternary_true_L28 debug: Terminated block@11: // ternary_false_L28 debug: Sealing block@12: // ternary_merge_L28 debug: Created Phi assignment: let ternary_result%26#2: uint64 = undefined while trying to resolve 'ternary_result%26' in block@12: // ternary_merge_L28 -debug: Added ternary_result%26#0 to Phi node: let ternary_result%26#2: uint64 = φ(ternary_result%26#0 <- block@10) in block@10: // ternary_true_L28 -debug: Added ternary_result%26#1 to Phi node: let ternary_result%26#2: uint64 = φ(ternary_result%26#0 <- block@10, ternary_result%26#1 <- block@11) in block@11: // ternary_false_L28 +debug: Added ternary_result%26#0 to Phi node: let ternary_result%26#2: uint64 = Phi(ternary_result%26#0 <- block@10) in block@10: // ternary_true_L28 +debug: Added ternary_result%26#1 to Phi node: let ternary_result%26#2: uint64 = Phi(ternary_result%26#0 <- block@10, ternary_result%26#1 <- block@11) in block@11: // ternary_false_L28 debug: Created Phi assignment: let abc#4: bytes = undefined while trying to resolve 'abc' in block@12: // ternary_merge_L28 -debug: Added abc#0 to Phi node: let abc#4: bytes = φ(abc#0 <- block@10) in block@10: // ternary_true_L28 -debug: Added abc#0 to Phi node: let abc#4: bytes = φ(abc#0 <- block@10, abc#0 <- block@11) in block@11: // ternary_false_L28 +debug: Added abc#0 to Phi node: let abc#4: bytes = Phi(abc#0 <- block@10) in block@10: // ternary_true_L28 +debug: Added abc#0 to Phi node: let abc#4: bytes = Phi(abc#0 <- block@10, abc#0 <- block@11) in block@11: // ternary_false_L28 debug: Replacing trivial Phi node: let abc#4: bytes = φ(abc#0 <- block@10, abc#0 <- block@11) (abc#4) with abc#0 debug: Deleting Phi assignment: let abc#4: bytes = φ(abc#0 <- block@10, abc#0 <- block@11) debug: Replaced trivial Phi node: let abc#4: bytes = φ(abc#0 <- block@10, abc#0 <- block@11) (abc#4) with abc#0 in current definition for 1 blocks @@ -383,11 +383,11 @@ debug: Terminated block@13: // ternary_true_L29 debug: Terminated block@14: // ternary_false_L29 debug: Sealing block@15: // ternary_merge_L29 debug: Created Phi assignment: let ternary_result%31#2: uint64 = undefined while trying to resolve 'ternary_result%31' in block@15: // ternary_merge_L29 -debug: Added ternary_result%31#0 to Phi node: let ternary_result%31#2: uint64 = φ(ternary_result%31#0 <- block@13) in block@13: // ternary_true_L29 -debug: Added ternary_result%31#1 to Phi node: let ternary_result%31#2: uint64 = φ(ternary_result%31#0 <- block@13, ternary_result%31#1 <- block@14) in block@14: // ternary_false_L29 +debug: Added ternary_result%31#0 to Phi node: let ternary_result%31#2: uint64 = Phi(ternary_result%31#0 <- block@13) in block@13: // ternary_true_L29 +debug: Added ternary_result%31#1 to Phi node: let ternary_result%31#2: uint64 = Phi(ternary_result%31#0 <- block@13, ternary_result%31#1 <- block@14) in block@14: // ternary_false_L29 debug: Created Phi assignment: let abc#5: bytes = undefined while trying to resolve 'abc' in block@15: // ternary_merge_L29 -debug: Added abc#0 to Phi node: let abc#5: bytes = φ(abc#0 <- block@13) in block@13: // ternary_true_L29 -debug: Added abc#0 to Phi node: let abc#5: bytes = φ(abc#0 <- block@13, abc#0 <- block@14) in block@14: // ternary_false_L29 +debug: Added abc#0 to Phi node: let abc#5: bytes = Phi(abc#0 <- block@13) in block@13: // ternary_true_L29 +debug: Added abc#0 to Phi node: let abc#5: bytes = Phi(abc#0 <- block@13, abc#0 <- block@14) in block@14: // ternary_false_L29 debug: Replacing trivial Phi node: let abc#5: bytes = φ(abc#0 <- block@13, abc#0 <- block@14) (abc#5) with abc#0 debug: Deleting Phi assignment: let abc#5: bytes = φ(abc#0 <- block@13, abc#0 <- block@14) debug: Replaced trivial Phi node: let abc#5: bytes = φ(abc#0 <- block@13, abc#0 <- block@14) (abc#5) with abc#0 in current definition for 1 blocks @@ -398,11 +398,11 @@ debug: Terminated block@16: // ternary_true_L30 debug: Terminated block@17: // ternary_false_L30 debug: Sealing block@18: // ternary_merge_L30 debug: Created Phi assignment: let ternary_result%36#2: uint64 = undefined while trying to resolve 'ternary_result%36' in block@18: // ternary_merge_L30 -debug: Added ternary_result%36#0 to Phi node: let ternary_result%36#2: uint64 = φ(ternary_result%36#0 <- block@16) in block@16: // ternary_true_L30 -debug: Added ternary_result%36#1 to Phi node: let ternary_result%36#2: uint64 = φ(ternary_result%36#0 <- block@16, ternary_result%36#1 <- block@17) in block@17: // ternary_false_L30 +debug: Added ternary_result%36#0 to Phi node: let ternary_result%36#2: uint64 = Phi(ternary_result%36#0 <- block@16) in block@16: // ternary_true_L30 +debug: Added ternary_result%36#1 to Phi node: let ternary_result%36#2: uint64 = Phi(ternary_result%36#0 <- block@16, ternary_result%36#1 <- block@17) in block@17: // ternary_false_L30 debug: Created Phi assignment: let abc#6: bytes = undefined while trying to resolve 'abc' in block@18: // ternary_merge_L30 -debug: Added abc#0 to Phi node: let abc#6: bytes = φ(abc#0 <- block@16) in block@16: // ternary_true_L30 -debug: Added abc#0 to Phi node: let abc#6: bytes = φ(abc#0 <- block@16, abc#0 <- block@17) in block@17: // ternary_false_L30 +debug: Added abc#0 to Phi node: let abc#6: bytes = Phi(abc#0 <- block@16) in block@16: // ternary_true_L30 +debug: Added abc#0 to Phi node: let abc#6: bytes = Phi(abc#0 <- block@16, abc#0 <- block@17) in block@17: // ternary_false_L30 debug: Replacing trivial Phi node: let abc#6: bytes = φ(abc#0 <- block@16, abc#0 <- block@17) (abc#6) with abc#0 debug: Deleting Phi assignment: let abc#6: bytes = φ(abc#0 <- block@16, abc#0 <- block@17) debug: Replaced trivial Phi node: let abc#6: bytes = φ(abc#0 <- block@16, abc#0 <- block@17) (abc#6) with abc#0 in current definition for 1 blocks @@ -413,11 +413,11 @@ debug: Terminated block@19: // ternary_true_L31 debug: Terminated block@20: // ternary_false_L31 debug: Sealing block@21: // ternary_merge_L31 debug: Created Phi assignment: let ternary_result%42#2: uint64 = undefined while trying to resolve 'ternary_result%42' in block@21: // ternary_merge_L31 -debug: Added ternary_result%42#0 to Phi node: let ternary_result%42#2: uint64 = φ(ternary_result%42#0 <- block@19) in block@19: // ternary_true_L31 -debug: Added ternary_result%42#1 to Phi node: let ternary_result%42#2: uint64 = φ(ternary_result%42#0 <- block@19, ternary_result%42#1 <- block@20) in block@20: // ternary_false_L31 +debug: Added ternary_result%42#0 to Phi node: let ternary_result%42#2: uint64 = Phi(ternary_result%42#0 <- block@19) in block@19: // ternary_true_L31 +debug: Added ternary_result%42#1 to Phi node: let ternary_result%42#2: uint64 = Phi(ternary_result%42#0 <- block@19, ternary_result%42#1 <- block@20) in block@20: // ternary_false_L31 debug: Created Phi assignment: let abc#7: bytes = undefined while trying to resolve 'abc' in block@21: // ternary_merge_L31 -debug: Added abc#0 to Phi node: let abc#7: bytes = φ(abc#0 <- block@19) in block@19: // ternary_true_L31 -debug: Added abc#0 to Phi node: let abc#7: bytes = φ(abc#0 <- block@19, abc#0 <- block@20) in block@20: // ternary_false_L31 +debug: Added abc#0 to Phi node: let abc#7: bytes = Phi(abc#0 <- block@19) in block@19: // ternary_true_L31 +debug: Added abc#0 to Phi node: let abc#7: bytes = Phi(abc#0 <- block@19, abc#0 <- block@20) in block@20: // ternary_false_L31 debug: Replacing trivial Phi node: let abc#7: bytes = φ(abc#0 <- block@19, abc#0 <- block@20) (abc#7) with abc#0 debug: Deleting Phi assignment: let abc#7: bytes = φ(abc#0 <- block@19, abc#0 <- block@20) debug: Replaced trivial Phi node: let abc#7: bytes = φ(abc#0 <- block@19, abc#0 <- block@20) (abc#7) with abc#0 in current definition for 1 blocks @@ -428,11 +428,11 @@ debug: Terminated block@22: // ternary_true_L31 debug: Terminated block@23: // ternary_false_L31 debug: Sealing block@24: // ternary_merge_L31 debug: Created Phi assignment: let ternary_result%44#2: uint64 = undefined while trying to resolve 'ternary_result%44' in block@24: // ternary_merge_L31 -debug: Added ternary_result%44#0 to Phi node: let ternary_result%44#2: uint64 = φ(ternary_result%44#0 <- block@22) in block@22: // ternary_true_L31 -debug: Added ternary_result%44#1 to Phi node: let ternary_result%44#2: uint64 = φ(ternary_result%44#0 <- block@22, ternary_result%44#1 <- block@23) in block@23: // ternary_false_L31 +debug: Added ternary_result%44#0 to Phi node: let ternary_result%44#2: uint64 = Phi(ternary_result%44#0 <- block@22) in block@22: // ternary_true_L31 +debug: Added ternary_result%44#1 to Phi node: let ternary_result%44#2: uint64 = Phi(ternary_result%44#0 <- block@22, ternary_result%44#1 <- block@23) in block@23: // ternary_false_L31 debug: Created Phi assignment: let abc#8: bytes = undefined while trying to resolve 'abc' in block@24: // ternary_merge_L31 -debug: Added abc#0 to Phi node: let abc#8: bytes = φ(abc#0 <- block@22) in block@22: // ternary_true_L31 -debug: Added abc#0 to Phi node: let abc#8: bytes = φ(abc#0 <- block@22, abc#0 <- block@23) in block@23: // ternary_false_L31 +debug: Added abc#0 to Phi node: let abc#8: bytes = Phi(abc#0 <- block@22) in block@22: // ternary_true_L31 +debug: Added abc#0 to Phi node: let abc#8: bytes = Phi(abc#0 <- block@22, abc#0 <- block@23) in block@23: // ternary_false_L31 debug: Replacing trivial Phi node: let abc#8: bytes = φ(abc#0 <- block@22, abc#0 <- block@23) (abc#8) with abc#0 debug: Deleting Phi assignment: let abc#8: bytes = φ(abc#0 <- block@22, abc#0 <- block@23) debug: Replaced trivial Phi node: let abc#8: bytes = φ(abc#0 <- block@22, abc#0 <- block@23) (abc#8) with abc#0 in current definition for 1 blocks @@ -443,11 +443,11 @@ debug: Terminated block@25: // ternary_true_L33 debug: Terminated block@26: // ternary_false_L33 debug: Sealing block@27: // ternary_merge_L33 debug: Created Phi assignment: let ternary_result%51#2: uint64 = undefined while trying to resolve 'ternary_result%51' in block@27: // ternary_merge_L33 -debug: Added ternary_result%51#0 to Phi node: let ternary_result%51#2: uint64 = φ(ternary_result%51#0 <- block@25) in block@25: // ternary_true_L33 -debug: Added ternary_result%51#1 to Phi node: let ternary_result%51#2: uint64 = φ(ternary_result%51#0 <- block@25, ternary_result%51#1 <- block@26) in block@26: // ternary_false_L33 +debug: Added ternary_result%51#0 to Phi node: let ternary_result%51#2: uint64 = Phi(ternary_result%51#0 <- block@25) in block@25: // ternary_true_L33 +debug: Added ternary_result%51#1 to Phi node: let ternary_result%51#2: uint64 = Phi(ternary_result%51#0 <- block@25, ternary_result%51#1 <- block@26) in block@26: // ternary_false_L33 debug: Created Phi assignment: let abc#9: bytes = undefined while trying to resolve 'abc' in block@27: // ternary_merge_L33 -debug: Added abc#0 to Phi node: let abc#9: bytes = φ(abc#0 <- block@25) in block@25: // ternary_true_L33 -debug: Added abc#0 to Phi node: let abc#9: bytes = φ(abc#0 <- block@25, abc#0 <- block@26) in block@26: // ternary_false_L33 +debug: Added abc#0 to Phi node: let abc#9: bytes = Phi(abc#0 <- block@25) in block@25: // ternary_true_L33 +debug: Added abc#0 to Phi node: let abc#9: bytes = Phi(abc#0 <- block@25, abc#0 <- block@26) in block@26: // ternary_false_L33 debug: Replacing trivial Phi node: let abc#9: bytes = φ(abc#0 <- block@25, abc#0 <- block@26) (abc#9) with abc#0 debug: Deleting Phi assignment: let abc#9: bytes = φ(abc#0 <- block@25, abc#0 <- block@26) debug: Replaced trivial Phi node: let abc#9: bytes = φ(abc#0 <- block@25, abc#0 <- block@26) (abc#9) with abc#0 in current definition for 1 blocks @@ -458,8 +458,8 @@ debug: Terminated block@28: // ternary_true_L33 debug: Terminated block@29: // ternary_false_L33 debug: Sealing block@30: // ternary_merge_L33 debug: Created Phi assignment: let ternary_result%53#2: uint64 = undefined while trying to resolve 'ternary_result%53' in block@30: // ternary_merge_L33 -debug: Added ternary_result%53#0 to Phi node: let ternary_result%53#2: uint64 = φ(ternary_result%53#0 <- block@28) in block@28: // ternary_true_L33 -debug: Added ternary_result%53#1 to Phi node: let ternary_result%53#2: uint64 = φ(ternary_result%53#0 <- block@28, ternary_result%53#1 <- block@29) in block@29: // ternary_false_L33 +debug: Added ternary_result%53#0 to Phi node: let ternary_result%53#2: uint64 = Phi(ternary_result%53#0 <- block@28) in block@28: // ternary_true_L33 +debug: Added ternary_result%53#1 to Phi node: let ternary_result%53#2: uint64 = Phi(ternary_result%53#0 <- block@28, ternary_result%53#1 <- block@29) in block@29: // ternary_false_L33 debug: Terminated block@30: // ternary_merge_L33 debug: Sealing block@None: // ternary_true_L38 debug: Sealing block@None: // ternary_false_L38 @@ -467,11 +467,11 @@ debug: Terminated block@31: // ternary_true_L38 debug: Terminated block@32: // ternary_false_L38 debug: Sealing block@33: // ternary_merge_L38 debug: Created Phi assignment: let ternary_result%57#2: bytes = undefined while trying to resolve 'ternary_result%57' in block@33: // ternary_merge_L38 -debug: Added ternary_result%57#0 to Phi node: let ternary_result%57#2: bytes = φ(ternary_result%57#0 <- block@31) in block@31: // ternary_true_L38 -debug: Added ternary_result%57#1 to Phi node: let ternary_result%57#2: bytes = φ(ternary_result%57#0 <- block@31, ternary_result%57#1 <- block@32) in block@32: // ternary_false_L38 +debug: Added ternary_result%57#0 to Phi node: let ternary_result%57#2: bytes = Phi(ternary_result%57#0 <- block@31) in block@31: // ternary_true_L38 +debug: Added ternary_result%57#1 to Phi node: let ternary_result%57#2: bytes = Phi(ternary_result%57#0 <- block@31, ternary_result%57#1 <- block@32) in block@32: // ternary_false_L38 debug: Created Phi assignment: let true#1: bytes = undefined while trying to resolve 'true' in block@33: // ternary_merge_L38 -debug: Added true#0 to Phi node: let true#1: bytes = φ(true#0 <- block@31) in block@31: // ternary_true_L38 -debug: Added true#0 to Phi node: let true#1: bytes = φ(true#0 <- block@31, true#0 <- block@32) in block@32: // ternary_false_L38 +debug: Added true#0 to Phi node: let true#1: bytes = Phi(true#0 <- block@31) in block@31: // ternary_true_L38 +debug: Added true#0 to Phi node: let true#1: bytes = Phi(true#0 <- block@31, true#0 <- block@32) in block@32: // ternary_false_L38 debug: Replacing trivial Phi node: let true#1: bytes = φ(true#0 <- block@31, true#0 <- block@32) (true#1) with true#0 debug: Deleting Phi assignment: let true#1: bytes = φ(true#0 <- block@31, true#0 <- block@32) debug: Replaced trivial Phi node: let true#1: bytes = φ(true#0 <- block@31, true#0 <- block@32) (true#1) with true#0 in current definition for 1 blocks @@ -482,11 +482,11 @@ debug: Terminated block@34: // ternary_true_L40 debug: Terminated block@35: // ternary_false_L40 debug: Sealing block@36: // ternary_merge_L40 debug: Created Phi assignment: let ternary_result%59#2: bytes = undefined while trying to resolve 'ternary_result%59' in block@36: // ternary_merge_L40 -debug: Added ternary_result%59#0 to Phi node: let ternary_result%59#2: bytes = φ(ternary_result%59#0 <- block@34) in block@34: // ternary_true_L40 -debug: Added ternary_result%59#1 to Phi node: let ternary_result%59#2: bytes = φ(ternary_result%59#0 <- block@34, ternary_result%59#1 <- block@35) in block@35: // ternary_false_L40 +debug: Added ternary_result%59#0 to Phi node: let ternary_result%59#2: bytes = Phi(ternary_result%59#0 <- block@34) in block@34: // ternary_true_L40 +debug: Added ternary_result%59#1 to Phi node: let ternary_result%59#2: bytes = Phi(ternary_result%59#0 <- block@34, ternary_result%59#1 <- block@35) in block@35: // ternary_false_L40 debug: Created Phi assignment: let true#2: bytes = undefined while trying to resolve 'true' in block@36: // ternary_merge_L40 -debug: Added true#0 to Phi node: let true#2: bytes = φ(true#0 <- block@34) in block@34: // ternary_true_L40 -debug: Added true#0 to Phi node: let true#2: bytes = φ(true#0 <- block@34, true#0 <- block@35) in block@35: // ternary_false_L40 +debug: Added true#0 to Phi node: let true#2: bytes = Phi(true#0 <- block@34) in block@34: // ternary_true_L40 +debug: Added true#0 to Phi node: let true#2: bytes = Phi(true#0 <- block@34, true#0 <- block@35) in block@35: // ternary_false_L40 debug: Replacing trivial Phi node: let true#2: bytes = φ(true#0 <- block@34, true#0 <- block@35) (true#2) with true#0 debug: Deleting Phi assignment: let true#2: bytes = φ(true#0 <- block@34, true#0 <- block@35) debug: Replaced trivial Phi node: let true#2: bytes = φ(true#0 <- block@34, true#0 <- block@35) (true#2) with true#0 in current definition for 1 blocks @@ -496,24 +496,24 @@ debug: Sealing block@None: // ternary_false_L41 debug: Terminated block@37: // ternary_true_L41 debug: Created Phi assignment: let false#1: bytes = undefined while trying to resolve 'false' in block@36: // ternary_merge_L40 debug: Created Phi assignment: let false#2: bytes = undefined while trying to resolve 'false' in block@33: // ternary_merge_L38 -debug: Added false#0 to Phi node: let false#2: bytes = φ(false#0 <- block@31) in block@31: // ternary_true_L38 -debug: Added false#0 to Phi node: let false#2: bytes = φ(false#0 <- block@31, false#0 <- block@32) in block@32: // ternary_false_L38 +debug: Added false#0 to Phi node: let false#2: bytes = Phi(false#0 <- block@31) in block@31: // ternary_true_L38 +debug: Added false#0 to Phi node: let false#2: bytes = Phi(false#0 <- block@31, false#0 <- block@32) in block@32: // ternary_false_L38 debug: Replacing trivial Phi node: let false#2: bytes = φ(false#0 <- block@31, false#0 <- block@32) (false#2) with false#0 debug: Deleting Phi assignment: let false#2: bytes = φ(false#0 <- block@31, false#0 <- block@32) debug: Replaced trivial Phi node: let false#2: bytes = φ(false#0 <- block@31, false#0 <- block@32) (false#2) with false#0 in current definition for 1 blocks -debug: Added false#0 to Phi node: let false#1: bytes = φ(false#0 <- block@34) in block@34: // ternary_true_L40 -debug: Added false#0 to Phi node: let false#1: bytes = φ(false#0 <- block@34, false#0 <- block@35) in block@35: // ternary_false_L40 +debug: Added false#0 to Phi node: let false#1: bytes = Phi(false#0 <- block@34) in block@34: // ternary_true_L40 +debug: Added false#0 to Phi node: let false#1: bytes = Phi(false#0 <- block@34, false#0 <- block@35) in block@35: // ternary_false_L40 debug: Replacing trivial Phi node: let false#1: bytes = φ(false#0 <- block@34, false#0 <- block@35) (false#1) with false#0 debug: Deleting Phi assignment: let false#1: bytes = φ(false#0 <- block@34, false#0 <- block@35) debug: Replaced trivial Phi node: let false#1: bytes = φ(false#0 <- block@34, false#0 <- block@35) (false#1) with false#0 in current definition for 1 blocks debug: Terminated block@38: // ternary_false_L41 debug: Sealing block@39: // ternary_merge_L41 debug: Created Phi assignment: let ternary_result%62#2: bytes = undefined while trying to resolve 'ternary_result%62' in block@39: // ternary_merge_L41 -debug: Added ternary_result%62#0 to Phi node: let ternary_result%62#2: bytes = φ(ternary_result%62#0 <- block@37) in block@37: // ternary_true_L41 -debug: Added ternary_result%62#1 to Phi node: let ternary_result%62#2: bytes = φ(ternary_result%62#0 <- block@37, ternary_result%62#1 <- block@38) in block@38: // ternary_false_L41 +debug: Added ternary_result%62#0 to Phi node: let ternary_result%62#2: bytes = Phi(ternary_result%62#0 <- block@37) in block@37: // ternary_true_L41 +debug: Added ternary_result%62#1 to Phi node: let ternary_result%62#2: bytes = Phi(ternary_result%62#0 <- block@37, ternary_result%62#1 <- block@38) in block@38: // ternary_false_L41 debug: Created Phi assignment: let false#3: bytes = undefined while trying to resolve 'false' in block@39: // ternary_merge_L41 -debug: Added false#0 to Phi node: let false#3: bytes = φ(false#0 <- block@37) in block@37: // ternary_true_L41 -debug: Added false#0 to Phi node: let false#3: bytes = φ(false#0 <- block@37, false#0 <- block@38) in block@38: // ternary_false_L41 +debug: Added false#0 to Phi node: let false#3: bytes = Phi(false#0 <- block@37) in block@37: // ternary_true_L41 +debug: Added false#0 to Phi node: let false#3: bytes = Phi(false#0 <- block@37, false#0 <- block@38) in block@38: // ternary_false_L41 debug: Replacing trivial Phi node: let false#3: bytes = φ(false#0 <- block@37, false#0 <- block@38) (false#3) with false#0 debug: Deleting Phi assignment: let false#3: bytes = φ(false#0 <- block@37, false#0 <- block@38) debug: Replaced trivial Phi node: let false#3: bytes = φ(false#0 <- block@37, false#0 <- block@38) (false#3) with false#0 in current definition for 1 blocks @@ -522,19 +522,19 @@ debug: Sealing block@None: // ternary_true_L42 debug: Sealing block@None: // ternary_false_L42 debug: Terminated block@40: // ternary_true_L42 debug: Created Phi assignment: let true#3: bytes = undefined while trying to resolve 'true' in block@39: // ternary_merge_L41 -debug: Added true#0 to Phi node: let true#3: bytes = φ(true#0 <- block@37) in block@37: // ternary_true_L41 -debug: Added true#0 to Phi node: let true#3: bytes = φ(true#0 <- block@37, true#0 <- block@38) in block@38: // ternary_false_L41 +debug: Added true#0 to Phi node: let true#3: bytes = Phi(true#0 <- block@37) in block@37: // ternary_true_L41 +debug: Added true#0 to Phi node: let true#3: bytes = Phi(true#0 <- block@37, true#0 <- block@38) in block@38: // ternary_false_L41 debug: Replacing trivial Phi node: let true#3: bytes = φ(true#0 <- block@37, true#0 <- block@38) (true#3) with true#0 debug: Deleting Phi assignment: let true#3: bytes = φ(true#0 <- block@37, true#0 <- block@38) debug: Replaced trivial Phi node: let true#3: bytes = φ(true#0 <- block@37, true#0 <- block@38) (true#3) with true#0 in current definition for 1 blocks debug: Terminated block@41: // ternary_false_L42 debug: Sealing block@42: // ternary_merge_L42 debug: Created Phi assignment: let ternary_result%65#2: bytes = undefined while trying to resolve 'ternary_result%65' in block@42: // ternary_merge_L42 -debug: Added ternary_result%65#0 to Phi node: let ternary_result%65#2: bytes = φ(ternary_result%65#0 <- block@40) in block@40: // ternary_true_L42 -debug: Added ternary_result%65#1 to Phi node: let ternary_result%65#2: bytes = φ(ternary_result%65#0 <- block@40, ternary_result%65#1 <- block@41) in block@41: // ternary_false_L42 +debug: Added ternary_result%65#0 to Phi node: let ternary_result%65#2: bytes = Phi(ternary_result%65#0 <- block@40) in block@40: // ternary_true_L42 +debug: Added ternary_result%65#1 to Phi node: let ternary_result%65#2: bytes = Phi(ternary_result%65#0 <- block@40, ternary_result%65#1 <- block@41) in block@41: // ternary_false_L42 debug: Created Phi assignment: let false#4: bytes = undefined while trying to resolve 'false' in block@42: // ternary_merge_L42 -debug: Added false#0 to Phi node: let false#4: bytes = φ(false#0 <- block@40) in block@40: // ternary_true_L42 -debug: Added false#0 to Phi node: let false#4: bytes = φ(false#0 <- block@40, false#0 <- block@41) in block@41: // ternary_false_L42 +debug: Added false#0 to Phi node: let false#4: bytes = Phi(false#0 <- block@40) in block@40: // ternary_true_L42 +debug: Added false#0 to Phi node: let false#4: bytes = Phi(false#0 <- block@40, false#0 <- block@41) in block@41: // ternary_false_L42 debug: Replacing trivial Phi node: let false#4: bytes = φ(false#0 <- block@40, false#0 <- block@41) (false#4) with false#0 debug: Deleting Phi assignment: let false#4: bytes = φ(false#0 <- block@40, false#0 <- block@41) debug: Replaced trivial Phi node: let false#4: bytes = φ(false#0 <- block@40, false#0 <- block@41) (false#4) with false#0 in current definition for 1 blocks @@ -545,23 +545,23 @@ debug: Terminated block@43: // ternary_true_L43 debug: Terminated block@44: // ternary_false_L43 debug: Sealing block@45: // ternary_merge_L43 debug: Created Phi assignment: let ternary_result%68#2: bytes = undefined while trying to resolve 'ternary_result%68' in block@45: // ternary_merge_L43 -debug: Added ternary_result%68#0 to Phi node: let ternary_result%68#2: bytes = φ(ternary_result%68#0 <- block@43) in block@43: // ternary_true_L43 -debug: Added ternary_result%68#1 to Phi node: let ternary_result%68#2: bytes = φ(ternary_result%68#0 <- block@43, ternary_result%68#1 <- block@44) in block@44: // ternary_false_L43 +debug: Added ternary_result%68#0 to Phi node: let ternary_result%68#2: bytes = Phi(ternary_result%68#0 <- block@43) in block@43: // ternary_true_L43 +debug: Added ternary_result%68#1 to Phi node: let ternary_result%68#2: bytes = Phi(ternary_result%68#0 <- block@43, ternary_result%68#1 <- block@44) in block@44: // ternary_false_L43 debug: Created Phi assignment: let false#5: bytes = undefined while trying to resolve 'false' in block@45: // ternary_merge_L43 -debug: Added false#0 to Phi node: let false#5: bytes = φ(false#0 <- block@43) in block@43: // ternary_true_L43 -debug: Added false#0 to Phi node: let false#5: bytes = φ(false#0 <- block@43, false#0 <- block@44) in block@44: // ternary_false_L43 +debug: Added false#0 to Phi node: let false#5: bytes = Phi(false#0 <- block@43) in block@43: // ternary_true_L43 +debug: Added false#0 to Phi node: let false#5: bytes = Phi(false#0 <- block@43, false#0 <- block@44) in block@44: // ternary_false_L43 debug: Replacing trivial Phi node: let false#5: bytes = φ(false#0 <- block@43, false#0 <- block@44) (false#5) with false#0 debug: Deleting Phi assignment: let false#5: bytes = φ(false#0 <- block@43, false#0 <- block@44) debug: Replaced trivial Phi node: let false#5: bytes = φ(false#0 <- block@43, false#0 <- block@44) (false#5) with false#0 in current definition for 1 blocks debug: Created Phi assignment: let true#4: bytes = undefined while trying to resolve 'true' in block@45: // ternary_merge_L43 debug: Created Phi assignment: let true#5: bytes = undefined while trying to resolve 'true' in block@42: // ternary_merge_L42 -debug: Added true#0 to Phi node: let true#5: bytes = φ(true#0 <- block@40) in block@40: // ternary_true_L42 -debug: Added true#0 to Phi node: let true#5: bytes = φ(true#0 <- block@40, true#0 <- block@41) in block@41: // ternary_false_L42 +debug: Added true#0 to Phi node: let true#5: bytes = Phi(true#0 <- block@40) in block@40: // ternary_true_L42 +debug: Added true#0 to Phi node: let true#5: bytes = Phi(true#0 <- block@40, true#0 <- block@41) in block@41: // ternary_false_L42 debug: Replacing trivial Phi node: let true#5: bytes = φ(true#0 <- block@40, true#0 <- block@41) (true#5) with true#0 debug: Deleting Phi assignment: let true#5: bytes = φ(true#0 <- block@40, true#0 <- block@41) debug: Replaced trivial Phi node: let true#5: bytes = φ(true#0 <- block@40, true#0 <- block@41) (true#5) with true#0 in current definition for 1 blocks -debug: Added true#0 to Phi node: let true#4: bytes = φ(true#0 <- block@43) in block@43: // ternary_true_L43 -debug: Added true#0 to Phi node: let true#4: bytes = φ(true#0 <- block@43, true#0 <- block@44) in block@44: // ternary_false_L43 +debug: Added true#0 to Phi node: let true#4: bytes = Phi(true#0 <- block@43) in block@43: // ternary_true_L43 +debug: Added true#0 to Phi node: let true#4: bytes = Phi(true#0 <- block@43, true#0 <- block@44) in block@44: // ternary_false_L43 debug: Replacing trivial Phi node: let true#4: bytes = φ(true#0 <- block@43, true#0 <- block@44) (true#4) with true#0 debug: Deleting Phi assignment: let true#4: bytes = φ(true#0 <- block@43, true#0 <- block@44) debug: Replaced trivial Phi node: let true#4: bytes = φ(true#0 <- block@43, true#0 <- block@44) (true#4) with true#0 in current definition for 1 blocks @@ -572,11 +572,11 @@ debug: Terminated block@46: // ternary_true_L44 debug: Terminated block@47: // ternary_false_L44 debug: Sealing block@48: // ternary_merge_L44 debug: Created Phi assignment: let ternary_result%71#2: bytes = undefined while trying to resolve 'ternary_result%71' in block@48: // ternary_merge_L44 -debug: Added ternary_result%71#0 to Phi node: let ternary_result%71#2: bytes = φ(ternary_result%71#0 <- block@46) in block@46: // ternary_true_L44 -debug: Added ternary_result%71#1 to Phi node: let ternary_result%71#2: bytes = φ(ternary_result%71#0 <- block@46, ternary_result%71#1 <- block@47) in block@47: // ternary_false_L44 +debug: Added ternary_result%71#0 to Phi node: let ternary_result%71#2: bytes = Phi(ternary_result%71#0 <- block@46) in block@46: // ternary_true_L44 +debug: Added ternary_result%71#1 to Phi node: let ternary_result%71#2: bytes = Phi(ternary_result%71#0 <- block@46, ternary_result%71#1 <- block@47) in block@47: // ternary_false_L44 debug: Created Phi assignment: let true#6: bytes = undefined while trying to resolve 'true' in block@48: // ternary_merge_L44 -debug: Added true#0 to Phi node: let true#6: bytes = φ(true#0 <- block@46) in block@46: // ternary_true_L44 -debug: Added true#0 to Phi node: let true#6: bytes = φ(true#0 <- block@46, true#0 <- block@47) in block@47: // ternary_false_L44 +debug: Added true#0 to Phi node: let true#6: bytes = Phi(true#0 <- block@46) in block@46: // ternary_true_L44 +debug: Added true#0 to Phi node: let true#6: bytes = Phi(true#0 <- block@46, true#0 <- block@47) in block@47: // ternary_false_L44 debug: Replacing trivial Phi node: let true#6: bytes = φ(true#0 <- block@46, true#0 <- block@47) (true#6) with true#0 debug: Deleting Phi assignment: let true#6: bytes = φ(true#0 <- block@46, true#0 <- block@47) debug: Replaced trivial Phi node: let true#6: bytes = φ(true#0 <- block@46, true#0 <- block@47) (true#6) with true#0 in current definition for 1 blocks @@ -585,25 +585,25 @@ debug: Sealing block@None: // ternary_true_L45 debug: Sealing block@None: // ternary_false_L45 debug: Terminated block@49: // ternary_true_L45 debug: Created Phi assignment: let false#6: bytes = undefined while trying to resolve 'false' in block@48: // ternary_merge_L44 -debug: Added false#0 to Phi node: let false#6: bytes = φ(false#0 <- block@46) in block@46: // ternary_true_L44 -debug: Added false#0 to Phi node: let false#6: bytes = φ(false#0 <- block@46, false#0 <- block@47) in block@47: // ternary_false_L44 +debug: Added false#0 to Phi node: let false#6: bytes = Phi(false#0 <- block@46) in block@46: // ternary_true_L44 +debug: Added false#0 to Phi node: let false#6: bytes = Phi(false#0 <- block@46, false#0 <- block@47) in block@47: // ternary_false_L44 debug: Replacing trivial Phi node: let false#6: bytes = φ(false#0 <- block@46, false#0 <- block@47) (false#6) with false#0 debug: Deleting Phi assignment: let false#6: bytes = φ(false#0 <- block@46, false#0 <- block@47) debug: Replaced trivial Phi node: let false#6: bytes = φ(false#0 <- block@46, false#0 <- block@47) (false#6) with false#0 in current definition for 1 blocks debug: Terminated block@50: // ternary_false_L45 debug: Sealing block@51: // ternary_merge_L45 debug: Created Phi assignment: let ternary_result%74#2: bytes = undefined while trying to resolve 'ternary_result%74' in block@51: // ternary_merge_L45 -debug: Added ternary_result%74#0 to Phi node: let ternary_result%74#2: bytes = φ(ternary_result%74#0 <- block@49) in block@49: // ternary_true_L45 -debug: Added ternary_result%74#1 to Phi node: let ternary_result%74#2: bytes = φ(ternary_result%74#0 <- block@49, ternary_result%74#1 <- block@50) in block@50: // ternary_false_L45 +debug: Added ternary_result%74#0 to Phi node: let ternary_result%74#2: bytes = Phi(ternary_result%74#0 <- block@49) in block@49: // ternary_true_L45 +debug: Added ternary_result%74#1 to Phi node: let ternary_result%74#2: bytes = Phi(ternary_result%74#0 <- block@49, ternary_result%74#1 <- block@50) in block@50: // ternary_false_L45 debug: Created Phi assignment: let true#7: bytes = undefined while trying to resolve 'true' in block@51: // ternary_merge_L45 -debug: Added true#0 to Phi node: let true#7: bytes = φ(true#0 <- block@49) in block@49: // ternary_true_L45 -debug: Added true#0 to Phi node: let true#7: bytes = φ(true#0 <- block@49, true#0 <- block@50) in block@50: // ternary_false_L45 +debug: Added true#0 to Phi node: let true#7: bytes = Phi(true#0 <- block@49) in block@49: // ternary_true_L45 +debug: Added true#0 to Phi node: let true#7: bytes = Phi(true#0 <- block@49, true#0 <- block@50) in block@50: // ternary_false_L45 debug: Replacing trivial Phi node: let true#7: bytes = φ(true#0 <- block@49, true#0 <- block@50) (true#7) with true#0 debug: Deleting Phi assignment: let true#7: bytes = φ(true#0 <- block@49, true#0 <- block@50) debug: Replaced trivial Phi node: let true#7: bytes = φ(true#0 <- block@49, true#0 <- block@50) (true#7) with true#0 in current definition for 1 blocks debug: Created Phi assignment: let false#7: bytes = undefined while trying to resolve 'false' in block@51: // ternary_merge_L45 -debug: Added false#0 to Phi node: let false#7: bytes = φ(false#0 <- block@49) in block@49: // ternary_true_L45 -debug: Added false#0 to Phi node: let false#7: bytes = φ(false#0 <- block@49, false#0 <- block@50) in block@50: // ternary_false_L45 +debug: Added false#0 to Phi node: let false#7: bytes = Phi(false#0 <- block@49) in block@49: // ternary_true_L45 +debug: Added false#0 to Phi node: let false#7: bytes = Phi(false#0 <- block@49, false#0 <- block@50) in block@50: // ternary_false_L45 debug: Replacing trivial Phi node: let false#7: bytes = φ(false#0 <- block@49, false#0 <- block@50) (false#7) with false#0 debug: Deleting Phi assignment: let false#7: bytes = φ(false#0 <- block@49, false#0 <- block@50) debug: Replaced trivial Phi node: let false#7: bytes = φ(false#0 <- block@49, false#0 <- block@50) (false#7) with false#0 in current definition for 1 blocks @@ -614,17 +614,17 @@ debug: Terminated block@52: // ternary_true_L46 debug: Terminated block@53: // ternary_false_L46 debug: Sealing block@54: // ternary_merge_L46 debug: Created Phi assignment: let ternary_result%77#2: bytes = undefined while trying to resolve 'ternary_result%77' in block@54: // ternary_merge_L46 -debug: Added ternary_result%77#0 to Phi node: let ternary_result%77#2: bytes = φ(ternary_result%77#0 <- block@52) in block@52: // ternary_true_L46 -debug: Added ternary_result%77#1 to Phi node: let ternary_result%77#2: bytes = φ(ternary_result%77#0 <- block@52, ternary_result%77#1 <- block@53) in block@53: // ternary_false_L46 +debug: Added ternary_result%77#0 to Phi node: let ternary_result%77#2: bytes = Phi(ternary_result%77#0 <- block@52) in block@52: // ternary_true_L46 +debug: Added ternary_result%77#1 to Phi node: let ternary_result%77#2: bytes = Phi(ternary_result%77#0 <- block@52, ternary_result%77#1 <- block@53) in block@53: // ternary_false_L46 debug: Created Phi assignment: let true#8: bytes = undefined while trying to resolve 'true' in block@54: // ternary_merge_L46 -debug: Added true#0 to Phi node: let true#8: bytes = φ(true#0 <- block@52) in block@52: // ternary_true_L46 -debug: Added true#0 to Phi node: let true#8: bytes = φ(true#0 <- block@52, true#0 <- block@53) in block@53: // ternary_false_L46 +debug: Added true#0 to Phi node: let true#8: bytes = Phi(true#0 <- block@52) in block@52: // ternary_true_L46 +debug: Added true#0 to Phi node: let true#8: bytes = Phi(true#0 <- block@52, true#0 <- block@53) in block@53: // ternary_false_L46 debug: Replacing trivial Phi node: let true#8: bytes = φ(true#0 <- block@52, true#0 <- block@53) (true#8) with true#0 debug: Deleting Phi assignment: let true#8: bytes = φ(true#0 <- block@52, true#0 <- block@53) debug: Replaced trivial Phi node: let true#8: bytes = φ(true#0 <- block@52, true#0 <- block@53) (true#8) with true#0 in current definition for 1 blocks debug: Created Phi assignment: let false#8: bytes = undefined while trying to resolve 'false' in block@54: // ternary_merge_L46 -debug: Added false#0 to Phi node: let false#8: bytes = φ(false#0 <- block@52) in block@52: // ternary_true_L46 -debug: Added false#0 to Phi node: let false#8: bytes = φ(false#0 <- block@52, false#0 <- block@53) in block@53: // ternary_false_L46 +debug: Added false#0 to Phi node: let false#8: bytes = Phi(false#0 <- block@52) in block@52: // ternary_true_L46 +debug: Added false#0 to Phi node: let false#8: bytes = Phi(false#0 <- block@52, false#0 <- block@53) in block@53: // ternary_false_L46 debug: Replacing trivial Phi node: let false#8: bytes = φ(false#0 <- block@52, false#0 <- block@53) (false#8) with false#0 debug: Deleting Phi assignment: let false#8: bytes = φ(false#0 <- block@52, false#0 <- block@53) debug: Replaced trivial Phi node: let false#8: bytes = φ(false#0 <- block@52, false#0 <- block@53) (false#8) with false#0 in current definition for 1 blocks @@ -635,11 +635,11 @@ debug: Terminated block@55: // ternary_true_L47 debug: Terminated block@56: // ternary_false_L47 debug: Sealing block@57: // ternary_merge_L47 debug: Created Phi assignment: let ternary_result%80#2: bytes = undefined while trying to resolve 'ternary_result%80' in block@57: // ternary_merge_L47 -debug: Added ternary_result%80#0 to Phi node: let ternary_result%80#2: bytes = φ(ternary_result%80#0 <- block@55) in block@55: // ternary_true_L47 -debug: Added ternary_result%80#1 to Phi node: let ternary_result%80#2: bytes = φ(ternary_result%80#0 <- block@55, ternary_result%80#1 <- block@56) in block@56: // ternary_false_L47 +debug: Added ternary_result%80#0 to Phi node: let ternary_result%80#2: bytes = Phi(ternary_result%80#0 <- block@55) in block@55: // ternary_true_L47 +debug: Added ternary_result%80#1 to Phi node: let ternary_result%80#2: bytes = Phi(ternary_result%80#0 <- block@55, ternary_result%80#1 <- block@56) in block@56: // ternary_false_L47 debug: Created Phi assignment: let false#9: bytes = undefined while trying to resolve 'false' in block@57: // ternary_merge_L47 -debug: Added false#0 to Phi node: let false#9: bytes = φ(false#0 <- block@55) in block@55: // ternary_true_L47 -debug: Added false#0 to Phi node: let false#9: bytes = φ(false#0 <- block@55, false#0 <- block@56) in block@56: // ternary_false_L47 +debug: Added false#0 to Phi node: let false#9: bytes = Phi(false#0 <- block@55) in block@55: // ternary_true_L47 +debug: Added false#0 to Phi node: let false#9: bytes = Phi(false#0 <- block@55, false#0 <- block@56) in block@56: // ternary_false_L47 debug: Replacing trivial Phi node: let false#9: bytes = φ(false#0 <- block@55, false#0 <- block@56) (false#9) with false#0 debug: Deleting Phi assignment: let false#9: bytes = φ(false#0 <- block@55, false#0 <- block@56) debug: Replaced trivial Phi node: let false#9: bytes = φ(false#0 <- block@55, false#0 <- block@56) (false#9) with false#0 in current definition for 1 blocks diff --git a/examples/tuple_support.puya.log b/examples/tuple_support.puya.log index f6838ac6cd..f1f0b3bd68 100644 --- a/examples/tuple_support.puya.log +++ b/examples/tuple_support.puya.log @@ -10,43 +10,43 @@ debug: Terminated block@2: // for_header_1_L78 debug: Terminated block@3: // for_header_2_L78 debug: Sealing block@None: // for_body_L78 debug: Created Phi assignment: let total#1: uint64 = undefined while trying to resolve 'total' in block@4: // for_body_L78 -debug: Added total#0 to Phi node: let total#1: uint64 = φ(total#0 <- block@1) in block@1: // for_header_0_L78 +debug: Added total#0 to Phi node: let total#1: uint64 = Phi(total#0 <- block@1) in block@1: // for_header_0_L78 debug: Looking for 'total' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L78 debug: Created Phi assignment: let total#2: uint64 = undefined while trying to resolve 'total' in block@2: // for_header_1_L78 -debug: Added total#2 to Phi node: let total#1: uint64 = φ(total#0 <- block@1, total#2 <- block@2) in block@2: // for_header_1_L78 +debug: Added total#2 to Phi node: let total#1: uint64 = Phi(total#0 <- block@1, total#2 <- block@2) in block@2: // for_header_1_L78 debug: Looking for 'total' in an unsealed block creating an incomplete Phi: block@3: // for_header_2_L78 debug: Created Phi assignment: let total#3: uint64 = undefined while trying to resolve 'total' in block@3: // for_header_2_L78 -debug: Added total#3 to Phi node: let total#1: uint64 = φ(total#0 <- block@1, total#2 <- block@2, total#3 <- block@3) in block@3: // for_header_2_L78 +debug: Added total#3 to Phi node: let total#1: uint64 = Phi(total#0 <- block@1, total#2 <- block@2, total#3 <- block@3) in block@3: // for_header_2_L78 debug: Created Phi assignment: let value#3: uint64 = undefined while trying to resolve 'value' in block@4: // for_body_L78 -debug: Added value#0 to Phi node: let value#3: uint64 = φ(value#0 <- block@1) in block@1: // for_header_0_L78 -debug: Added value#1 to Phi node: let value#3: uint64 = φ(value#0 <- block@1, value#1 <- block@2) in block@2: // for_header_1_L78 -debug: Added value#2 to Phi node: let value#3: uint64 = φ(value#0 <- block@1, value#1 <- block@2, value#2 <- block@3) in block@3: // for_header_2_L78 +debug: Added value#0 to Phi node: let value#3: uint64 = Phi(value#0 <- block@1) in block@1: // for_header_0_L78 +debug: Added value#1 to Phi node: let value#3: uint64 = Phi(value#0 <- block@1, value#1 <- block@2) in block@2: // for_header_1_L78 +debug: Added value#2 to Phi node: let value#3: uint64 = Phi(value#0 <- block@1, value#1 <- block@2, value#2 <- block@3) in block@3: // for_header_2_L78 debug: Terminated block@4: // for_body_L78 debug: Sealing block@5: // for_footer_L78 debug: Created Phi assignment: let tuple_index%0#1: uint64 = undefined while trying to resolve 'tuple_index%0' in block@4: // for_body_L78 -debug: Added tuple_index%0#0 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1) in block@1: // for_header_0_L78 +debug: Added tuple_index%0#0 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1) in block@1: // for_header_0_L78 debug: Looking for 'tuple_index%0' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L78 debug: Created Phi assignment: let tuple_index%0#2: uint64 = undefined while trying to resolve 'tuple_index%0' in block@2: // for_header_1_L78 -debug: Added tuple_index%0#2 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2) in block@2: // for_header_1_L78 +debug: Added tuple_index%0#2 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2) in block@2: // for_header_1_L78 debug: Looking for 'tuple_index%0' in an unsealed block creating an incomplete Phi: block@3: // for_header_2_L78 debug: Created Phi assignment: let tuple_index%0#3: uint64 = undefined while trying to resolve 'tuple_index%0' in block@3: // for_header_2_L78 -debug: Added tuple_index%0#3 to Phi node: let tuple_index%0#1: uint64 = φ(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2, tuple_index%0#3 <- block@3) in block@3: // for_header_2_L78 +debug: Added tuple_index%0#3 to Phi node: let tuple_index%0#1: uint64 = Phi(tuple_index%0#0 <- block@1, tuple_index%0#2 <- block@2, tuple_index%0#3 <- block@3) in block@3: // for_header_2_L78 debug: Terminated block@5: // for_footer_L78 debug: Sealing block@2: // for_header_1_L78 -debug: Added total#4 to Phi node: let total#2: uint64 = φ(total#4 <- block@5) in block@5: // for_footer_L78 +debug: Added total#4 to Phi node: let total#2: uint64 = Phi(total#4 <- block@5) in block@5: // for_footer_L78 debug: Replacing trivial Phi node: let total#2: uint64 = φ(total#4 <- block@5) (total#2) with total#4 debug: Deleting Phi assignment: let total#2: uint64 = φ(total#4 <- block@5) debug: Replaced trivial Phi node: let total#2: uint64 = φ(total#4 <- block@5) (total#2) with total#4 in current definition for 1 blocks -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@5) in block@5: // for_footer_L78 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#2: uint64 = Phi(tuple_index%0#4 <- block@5) in block@5: // for_footer_L78 debug: Replacing trivial Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@5) (tuple_index%0#2) with tuple_index%0#4 debug: Deleting Phi assignment: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@5) debug: Replaced trivial Phi node: let tuple_index%0#2: uint64 = φ(tuple_index%0#4 <- block@5) (tuple_index%0#2) with tuple_index%0#4 in current definition for 1 blocks debug: Sealing block@3: // for_header_2_L78 -debug: Added total#4 to Phi node: let total#3: uint64 = φ(total#4 <- block@5) in block@5: // for_footer_L78 +debug: Added total#4 to Phi node: let total#3: uint64 = Phi(total#4 <- block@5) in block@5: // for_footer_L78 debug: Replacing trivial Phi node: let total#3: uint64 = φ(total#4 <- block@5) (total#3) with total#4 debug: Deleting Phi assignment: let total#3: uint64 = φ(total#4 <- block@5) debug: Replaced trivial Phi node: let total#3: uint64 = φ(total#4 <- block@5) (total#3) with total#4 in current definition for 1 blocks -debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@5) in block@5: // for_footer_L78 +debug: Added tuple_index%0#4 to Phi node: let tuple_index%0#3: uint64 = Phi(tuple_index%0#4 <- block@5) in block@5: // for_footer_L78 debug: Replacing trivial Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@5) (tuple_index%0#3) with tuple_index%0#4 debug: Deleting Phi assignment: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@5) debug: Replaced trivial Phi node: let tuple_index%0#3: uint64 = φ(tuple_index%0#4 <- block@5) (tuple_index%0#3) with tuple_index%0#4 in current definition for 1 blocks @@ -71,12 +71,12 @@ debug: Sealing block@3: // for_footer_L70 debug: Sealing block@None: // after_for_L70 debug: Terminated block@3: // for_footer_L70 debug: Sealing block@1: // for_header_L70 -debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0) in block@0: // L67 -debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L70 -debug: Added result#0 to Phi node: let result#1: bytes = φ(result#0 <- block@0) in block@0: // L67 -debug: Added result#2 to Phi node: let result#1: bytes = φ(result#0 <- block@0, result#2 <- block@3) in block@3: // for_footer_L70 -debug: Added b#0 to Phi node: let b#1: bytes = φ(b#0 <- block@0) in block@0: // L67 -debug: Added b#1 to Phi node: let b#1: bytes = φ(b#0 <- block@0, b#1 <- block@3) in block@3: // for_footer_L70 +debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0) in block@0: // L67 +debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L70 +debug: Added result#0 to Phi node: let result#1: bytes = Phi(result#0 <- block@0) in block@0: // L67 +debug: Added result#2 to Phi node: let result#1: bytes = Phi(result#0 <- block@0, result#2 <- block@3) in block@3: // for_footer_L70 +debug: Added b#0 to Phi node: let b#1: bytes = Phi(b#0 <- block@0) in block@0: // L67 +debug: Added b#1 to Phi node: let b#1: bytes = Phi(b#0 <- block@0, b#1 <- block@3) in block@3: // for_footer_L70 debug: Replacing trivial Phi node: let b#1: bytes = φ(b#0 <- block@0, b#1 <- block@3) (b#1) with b#0 debug: Deleting Phi assignment: let b#1: bytes = φ(b#0 <- block@0, b#1 <- block@3) debug: Replaced trivial Phi node: let b#1: bytes = φ(b#0 <- block@0, b#1 <- block@3) (b#1) with b#0 in current definition for 3 blocks @@ -99,47 +99,47 @@ debug: Terminated block@3: // if_body_L22 debug: Terminated block@4: // else_body_L22 debug: Sealing block@5: // after_if_else_L22 debug: Created Phi assignment: let a2#1: uint64 = undefined while trying to resolve 'a2' in block@5: // after_if_else_L22 -debug: Added a2#0 to Phi node: let a2#1: uint64 = φ(a2#0 <- block@3) in block@3: // if_body_L22 -debug: Added a2#0 to Phi node: let a2#1: uint64 = φ(a2#0 <- block@3, a2#0 <- block@4) in block@4: // else_body_L22 +debug: Added a2#0 to Phi node: let a2#1: uint64 = Phi(a2#0 <- block@3) in block@3: // if_body_L22 +debug: Added a2#0 to Phi node: let a2#1: uint64 = Phi(a2#0 <- block@3, a2#0 <- block@4) in block@4: // else_body_L22 debug: Replacing trivial Phi node: let a2#1: uint64 = φ(a2#0 <- block@3, a2#0 <- block@4) (a2#1) with a2#0 debug: Deleting Phi assignment: let a2#1: uint64 = φ(a2#0 <- block@3, a2#0 <- block@4) debug: Replaced trivial Phi node: let a2#1: uint64 = φ(a2#0 <- block@3, a2#0 <- block@4) (a2#1) with a2#0 in current definition for 1 blocks debug: Created Phi assignment: let a#1: uint64 = undefined while trying to resolve 'a' in block@5: // after_if_else_L22 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@3) in block@3: // if_body_L22 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@3, a#0 <- block@4) in block@4: // else_body_L22 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@3) in block@3: // if_body_L22 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@3, a#0 <- block@4) in block@4: // else_body_L22 debug: Replacing trivial Phi node: let a#1: uint64 = φ(a#0 <- block@3, a#0 <- block@4) (a#1) with a#0 debug: Deleting Phi assignment: let a#1: uint64 = φ(a#0 <- block@3, a#0 <- block@4) debug: Replaced trivial Phi node: let a#1: uint64 = φ(a#0 <- block@3, a#0 <- block@4) (a#1) with a#0 in current definition for 1 blocks debug: Created Phi assignment: let b2#1: uint64 = undefined while trying to resolve 'b2' in block@5: // after_if_else_L22 -debug: Added b2#0 to Phi node: let b2#1: uint64 = φ(b2#0 <- block@3) in block@3: // if_body_L22 -debug: Added b2#0 to Phi node: let b2#1: uint64 = φ(b2#0 <- block@3, b2#0 <- block@4) in block@4: // else_body_L22 +debug: Added b2#0 to Phi node: let b2#1: uint64 = Phi(b2#0 <- block@3) in block@3: // if_body_L22 +debug: Added b2#0 to Phi node: let b2#1: uint64 = Phi(b2#0 <- block@3, b2#0 <- block@4) in block@4: // else_body_L22 debug: Replacing trivial Phi node: let b2#1: uint64 = φ(b2#0 <- block@3, b2#0 <- block@4) (b2#1) with b2#0 debug: Deleting Phi assignment: let b2#1: uint64 = φ(b2#0 <- block@3, b2#0 <- block@4) debug: Replaced trivial Phi node: let b2#1: uint64 = φ(b2#0 <- block@3, b2#0 <- block@4) (b2#1) with b2#0 in current definition for 1 blocks debug: Created Phi assignment: let b#1: uint64 = undefined while trying to resolve 'b' in block@5: // after_if_else_L22 -debug: Added b#0 to Phi node: let b#1: uint64 = φ(b#0 <- block@3) in block@3: // if_body_L22 -debug: Added b#0 to Phi node: let b#1: uint64 = φ(b#0 <- block@3, b#0 <- block@4) in block@4: // else_body_L22 +debug: Added b#0 to Phi node: let b#1: uint64 = Phi(b#0 <- block@3) in block@3: // if_body_L22 +debug: Added b#0 to Phi node: let b#1: uint64 = Phi(b#0 <- block@3, b#0 <- block@4) in block@4: // else_body_L22 debug: Replacing trivial Phi node: let b#1: uint64 = φ(b#0 <- block@3, b#0 <- block@4) (b#1) with b#0 debug: Deleting Phi assignment: let b#1: uint64 = φ(b#0 <- block@3, b#0 <- block@4) debug: Replaced trivial Phi node: let b#1: uint64 = φ(b#0 <- block@3, b#0 <- block@4) (b#1) with b#0 in current definition for 1 blocks debug: Created Phi assignment: let cd.0#1: uint64 = undefined while trying to resolve 'cd.0' in block@5: // after_if_else_L22 -debug: Added cd.0#0 to Phi node: let cd.0#1: uint64 = φ(cd.0#0 <- block@3) in block@3: // if_body_L22 -debug: Added cd.0#0 to Phi node: let cd.0#1: uint64 = φ(cd.0#0 <- block@3, cd.0#0 <- block@4) in block@4: // else_body_L22 +debug: Added cd.0#0 to Phi node: let cd.0#1: uint64 = Phi(cd.0#0 <- block@3) in block@3: // if_body_L22 +debug: Added cd.0#0 to Phi node: let cd.0#1: uint64 = Phi(cd.0#0 <- block@3, cd.0#0 <- block@4) in block@4: // else_body_L22 debug: Replacing trivial Phi node: let cd.0#1: uint64 = φ(cd.0#0 <- block@3, cd.0#0 <- block@4) (cd.0#1) with cd.0#0 debug: Deleting Phi assignment: let cd.0#1: uint64 = φ(cd.0#0 <- block@3, cd.0#0 <- block@4) debug: Replaced trivial Phi node: let cd.0#1: uint64 = φ(cd.0#0 <- block@3, cd.0#0 <- block@4) (cd.0#1) with cd.0#0 in current definition for 1 blocks debug: Created Phi assignment: let cd.1#1: uint64 = undefined while trying to resolve 'cd.1' in block@5: // after_if_else_L22 -debug: Added cd.1#0 to Phi node: let cd.1#1: uint64 = φ(cd.1#0 <- block@3) in block@3: // if_body_L22 -debug: Added cd.1#0 to Phi node: let cd.1#1: uint64 = φ(cd.1#0 <- block@3, cd.1#0 <- block@4) in block@4: // else_body_L22 +debug: Added cd.1#0 to Phi node: let cd.1#1: uint64 = Phi(cd.1#0 <- block@3) in block@3: // if_body_L22 +debug: Added cd.1#0 to Phi node: let cd.1#1: uint64 = Phi(cd.1#0 <- block@3, cd.1#0 <- block@4) in block@4: // else_body_L22 debug: Replacing trivial Phi node: let cd.1#1: uint64 = φ(cd.1#0 <- block@3, cd.1#0 <- block@4) (cd.1#1) with cd.1#0 debug: Deleting Phi assignment: let cd.1#1: uint64 = φ(cd.1#0 <- block@3, cd.1#0 <- block@4) debug: Replaced trivial Phi node: let cd.1#1: uint64 = φ(cd.1#0 <- block@3, cd.1#0 <- block@4) (cd.1#1) with cd.1#0 in current definition for 1 blocks debug: Created Phi assignment: let tup.0#2: uint64 = undefined while trying to resolve 'tup.0' in block@5: // after_if_else_L22 -debug: Added tup.0#0 to Phi node: let tup.0#2: uint64 = φ(tup.0#0 <- block@3) in block@3: // if_body_L22 -debug: Added tup.0#1 to Phi node: let tup.0#2: uint64 = φ(tup.0#0 <- block@3, tup.0#1 <- block@4) in block@4: // else_body_L22 +debug: Added tup.0#0 to Phi node: let tup.0#2: uint64 = Phi(tup.0#0 <- block@3) in block@3: // if_body_L22 +debug: Added tup.0#1 to Phi node: let tup.0#2: uint64 = Phi(tup.0#0 <- block@3, tup.0#1 <- block@4) in block@4: // else_body_L22 debug: Created Phi assignment: let tup.1#2: uint64 = undefined while trying to resolve 'tup.1' in block@5: // after_if_else_L22 -debug: Added tup.1#0 to Phi node: let tup.1#2: uint64 = φ(tup.1#0 <- block@3) in block@3: // if_body_L22 -debug: Added tup.1#1 to Phi node: let tup.1#2: uint64 = φ(tup.1#0 <- block@3, tup.1#1 <- block@4) in block@4: // else_body_L22 +debug: Added tup.1#0 to Phi node: let tup.1#2: uint64 = Phi(tup.1#0 <- block@3) in block@3: // if_body_L22 +debug: Added tup.1#1 to Phi node: let tup.1#2: uint64 = Phi(tup.1#0 <- block@3, tup.1#1 <- block@4) in block@4: // else_body_L22 debug: Terminated block@5: // after_if_else_L22 debug: Sealing block@0: // L55 debug: Terminated block@0: // L55 diff --git a/examples/unary/puya.log b/examples/unary/puya.log index d8e27fcbaf..1871ebd721 100644 --- a/examples/unary/puya.log +++ b/examples/unary/puya.log @@ -12,36 +12,36 @@ debug: Terminated block@3: // for_header_2_L31 debug: Terminated block@4: // for_header_3_L31 debug: Sealing block@None: // for_body_L31 debug: Created Phi assignment: let i#4: uint64 = undefined while trying to resolve 'i' in block@5: // for_body_L31 -debug: Added i#0 to Phi node: let i#4: uint64 = φ(i#0 <- block@1) in block@1: // for_header_0_L31 -debug: Added i#1 to Phi node: let i#4: uint64 = φ(i#0 <- block@1, i#1 <- block@2) in block@2: // for_header_1_L31 -debug: Added i#2 to Phi node: let i#4: uint64 = φ(i#0 <- block@1, i#1 <- block@2, i#2 <- block@3) in block@3: // for_header_2_L31 -debug: Added i#3 to Phi node: let i#4: uint64 = φ(i#0 <- block@1, i#1 <- block@2, i#2 <- block@3, i#3 <- block@4) in block@4: // for_header_3_L31 +debug: Added i#0 to Phi node: let i#4: uint64 = Phi(i#0 <- block@1) in block@1: // for_header_0_L31 +debug: Added i#1 to Phi node: let i#4: uint64 = Phi(i#0 <- block@1, i#1 <- block@2) in block@2: // for_header_1_L31 +debug: Added i#2 to Phi node: let i#4: uint64 = Phi(i#0 <- block@1, i#1 <- block@2, i#2 <- block@3) in block@3: // for_header_2_L31 +debug: Added i#3 to Phi node: let i#4: uint64 = Phi(i#0 <- block@1, i#1 <- block@2, i#2 <- block@3, i#3 <- block@4) in block@4: // for_header_3_L31 debug: Terminated block@5: // for_body_L31 debug: Sealing block@6: // for_footer_L31 debug: Created Phi assignment: let tuple_index%1#1: uint64 = undefined while trying to resolve 'tuple_index%1' in block@5: // for_body_L31 -debug: Added tuple_index%1#0 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@1) in block@1: // for_header_0_L31 +debug: Added tuple_index%1#0 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@1) in block@1: // for_header_0_L31 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@2: // for_header_1_L31 debug: Created Phi assignment: let tuple_index%1#2: uint64 = undefined while trying to resolve 'tuple_index%1' in block@2: // for_header_1_L31 -debug: Added tuple_index%1#2 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@1, tuple_index%1#2 <- block@2) in block@2: // for_header_1_L31 +debug: Added tuple_index%1#2 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@1, tuple_index%1#2 <- block@2) in block@2: // for_header_1_L31 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@3: // for_header_2_L31 debug: Created Phi assignment: let tuple_index%1#3: uint64 = undefined while trying to resolve 'tuple_index%1' in block@3: // for_header_2_L31 -debug: Added tuple_index%1#3 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@1, tuple_index%1#2 <- block@2, tuple_index%1#3 <- block@3) in block@3: // for_header_2_L31 +debug: Added tuple_index%1#3 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@1, tuple_index%1#2 <- block@2, tuple_index%1#3 <- block@3) in block@3: // for_header_2_L31 debug: Looking for 'tuple_index%1' in an unsealed block creating an incomplete Phi: block@4: // for_header_3_L31 debug: Created Phi assignment: let tuple_index%1#4: uint64 = undefined while trying to resolve 'tuple_index%1' in block@4: // for_header_3_L31 -debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = φ(tuple_index%1#0 <- block@1, tuple_index%1#2 <- block@2, tuple_index%1#3 <- block@3, tuple_index%1#4 <- block@4) in block@4: // for_header_3_L31 +debug: Added tuple_index%1#4 to Phi node: let tuple_index%1#1: uint64 = Phi(tuple_index%1#0 <- block@1, tuple_index%1#2 <- block@2, tuple_index%1#3 <- block@3, tuple_index%1#4 <- block@4) in block@4: // for_header_3_L31 debug: Terminated block@6: // for_footer_L31 debug: Sealing block@2: // for_header_1_L31 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@6) in block@6: // for_footer_L31 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#2: uint64 = Phi(tuple_index%1#5 <- block@6) in block@6: // for_footer_L31 debug: Replacing trivial Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@6) (tuple_index%1#2) with tuple_index%1#5 debug: Deleting Phi assignment: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@6) debug: Replaced trivial Phi node: let tuple_index%1#2: uint64 = φ(tuple_index%1#5 <- block@6) (tuple_index%1#2) with tuple_index%1#5 in current definition for 1 blocks debug: Sealing block@3: // for_header_2_L31 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@6) in block@6: // for_footer_L31 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#3: uint64 = Phi(tuple_index%1#5 <- block@6) in block@6: // for_footer_L31 debug: Replacing trivial Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@6) (tuple_index%1#3) with tuple_index%1#5 debug: Deleting Phi assignment: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@6) debug: Replaced trivial Phi node: let tuple_index%1#3: uint64 = φ(tuple_index%1#5 <- block@6) (tuple_index%1#3) with tuple_index%1#5 in current definition for 1 blocks debug: Sealing block@4: // for_header_3_L31 -debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@6) in block@6: // for_footer_L31 +debug: Added tuple_index%1#5 to Phi node: let tuple_index%1#4: uint64 = Phi(tuple_index%1#5 <- block@6) in block@6: // for_footer_L31 debug: Replacing trivial Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@6) (tuple_index%1#4) with tuple_index%1#5 debug: Deleting Phi assignment: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@6) debug: Replaced trivial Phi node: let tuple_index%1#4: uint64 = φ(tuple_index%1#5 <- block@6) (tuple_index%1#4) with tuple_index%1#5 in current definition for 1 blocks diff --git a/examples/undefined_phi_args/puya.log b/examples/undefined_phi_args/puya.log index def333b960..b92c28d6eb 100644 --- a/examples/undefined_phi_args/puya.log +++ b/examples/undefined_phi_args/puya.log @@ -10,8 +10,8 @@ debug: Sealing block@None: // else_body_L39 debug: Terminated block@1: // if_body_L39 debug: Sealing block@2: // after_if_else_L39 debug: Created Phi assignment: let x#1: uint64 = undefined while trying to resolve 'x' in block@2: // after_if_else_L39 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0) in block@0: // L38 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) in block@1: // if_body_L39 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0) in block@0: // L38 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0, x#0 <- block@1) in block@1: // if_body_L39 debug: Replacing trivial Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) (x#1) with x#0 debug: Deleting Phi assignment: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) debug: Replaced trivial Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) (x#1) with x#0 in current definition for 1 blocks @@ -23,13 +23,13 @@ debug: Terminated block@4: // else_body_L41 debug: Sealing block@5: // after_if_else_L41 debug: Created Phi assignment: let y#1: uint64 = undefined while trying to resolve 'y' in block@5: // after_if_else_L41 debug: Created Phi assignment: let y#2: uint64 = undefined while trying to resolve 'y' in block@2: // after_if_else_L39 -debug: Added y#0 to Phi node: let y#2: uint64 = φ(y#0 <- block@0) in block@0: // L38 -debug: Added y#0 to Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) in block@1: // if_body_L39 +debug: Added y#0 to Phi node: let y#2: uint64 = Phi(y#0 <- block@0) in block@0: // L38 +debug: Added y#0 to Phi node: let y#2: uint64 = Phi(y#0 <- block@0, y#0 <- block@1) in block@1: // if_body_L39 debug: Replacing trivial Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) (y#2) with y#0 debug: Deleting Phi assignment: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) debug: Replaced trivial Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) (y#2) with y#0 in current definition for 1 blocks -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@3) in block@3: // if_body_L41 -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) in block@4: // else_body_L41 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@3) in block@3: // if_body_L41 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@3, y#0 <- block@4) in block@4: // else_body_L41 debug: Replacing trivial Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) (y#1) with y#0 debug: Deleting Phi assignment: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) debug: Replaced trivial Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) (y#1) with y#0 in current definition for 1 blocks @@ -40,22 +40,22 @@ debug: Created Phi assignment: let a#1: uint64 = undefined while trying to resol debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@2: // after_if_else_L39 debug: Created Phi assignment: let a#3: uint64 = undefined while trying to resolve 'a' in block@0: // L38 warning: Variable a potentially used before assignment -debug: Added a#3 to Phi node: let a#2: uint64 = φ(a#3 <- block@0) in block@0: // L38 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#3 <- block@0, a#0 <- block@1) in block@1: // if_body_L39 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#2 <- block@3) in block@3: // if_body_L41 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) in block@4: // else_body_L41 +debug: Added a#3 to Phi node: let a#2: uint64 = Phi(a#3 <- block@0) in block@0: // L38 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#3 <- block@0, a#0 <- block@1) in block@1: // if_body_L39 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#2 <- block@3) in block@3: // if_body_L41 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#2 <- block@3, a#2 <- block@4) in block@4: // else_body_L41 debug: Replacing trivial Phi node: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) (a#1) with a#2 debug: Deleting Phi assignment: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) debug: Replaced trivial Phi node: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) (a#1) with a#2 in current definition for 1 blocks debug: Terminated block@6: // if_body_L45 debug: Created Phi assignment: let b#2: uint64 = undefined while trying to resolve 'b' in block@5: // after_if_else_L41 -debug: Added b#0 to Phi node: let b#2: uint64 = φ(b#0 <- block@3) in block@3: // if_body_L41 -debug: Added b#1 to Phi node: let b#2: uint64 = φ(b#0 <- block@3, b#1 <- block@4) in block@4: // else_body_L41 +debug: Added b#0 to Phi node: let b#2: uint64 = Phi(b#0 <- block@3) in block@3: // if_body_L41 +debug: Added b#1 to Phi node: let b#2: uint64 = Phi(b#0 <- block@3, b#1 <- block@4) in block@4: // else_body_L41 debug: Terminated block@7: // else_body_L45 debug: Sealing block@8: // after_if_else_L45 debug: Created Phi assignment: let c#2: uint64 = undefined while trying to resolve 'c' in block@8: // after_if_else_L45 -debug: Added c#0 to Phi node: let c#2: uint64 = φ(c#0 <- block@6) in block@6: // if_body_L45 -debug: Added c#1 to Phi node: let c#2: uint64 = φ(c#0 <- block@6, c#1 <- block@7) in block@7: // else_body_L45 +debug: Added c#0 to Phi node: let c#2: uint64 = Phi(c#0 <- block@6) in block@6: // if_body_L45 +debug: Added c#1 to Phi node: let c#2: uint64 = Phi(c#0 <- block@6, c#1 <- block@7) in block@7: // else_body_L45 debug: Terminated block@8: // after_if_else_L45 debug: Sealing block@0: // L57 debug: Terminated block@0: // L57 @@ -64,8 +64,8 @@ debug: Sealing block@None: // else_body_L58 debug: Terminated block@1: // if_body_L58 debug: Sealing block@2: // after_if_else_L58 debug: Created Phi assignment: let x#1: uint64 = undefined while trying to resolve 'x' in block@2: // after_if_else_L58 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0) in block@0: // L57 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) in block@1: // if_body_L58 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0) in block@0: // L57 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0, x#0 <- block@1) in block@1: // if_body_L58 debug: Replacing trivial Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) (x#1) with x#0 debug: Deleting Phi assignment: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) debug: Replaced trivial Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) (x#1) with x#0 in current definition for 1 blocks @@ -77,13 +77,13 @@ debug: Terminated block@4: // else_body_L60 debug: Sealing block@5: // after_if_else_L60 debug: Created Phi assignment: let y#1: uint64 = undefined while trying to resolve 'y' in block@5: // after_if_else_L60 debug: Created Phi assignment: let y#2: uint64 = undefined while trying to resolve 'y' in block@2: // after_if_else_L58 -debug: Added y#0 to Phi node: let y#2: uint64 = φ(y#0 <- block@0) in block@0: // L57 -debug: Added y#0 to Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) in block@1: // if_body_L58 +debug: Added y#0 to Phi node: let y#2: uint64 = Phi(y#0 <- block@0) in block@0: // L57 +debug: Added y#0 to Phi node: let y#2: uint64 = Phi(y#0 <- block@0, y#0 <- block@1) in block@1: // if_body_L58 debug: Replacing trivial Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) (y#2) with y#0 debug: Deleting Phi assignment: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) debug: Replaced trivial Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) (y#2) with y#0 in current definition for 1 blocks -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@3) in block@3: // if_body_L60 -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) in block@4: // else_body_L60 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@3) in block@3: // if_body_L60 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@3, y#0 <- block@4) in block@4: // else_body_L60 debug: Replacing trivial Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) (y#1) with y#0 debug: Deleting Phi assignment: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) debug: Replaced trivial Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) (y#1) with y#0 in current definition for 1 blocks @@ -94,22 +94,22 @@ debug: Created Phi assignment: let a#1: bytes = undefined while trying to resolv debug: Created Phi assignment: let a#2: bytes = undefined while trying to resolve 'a' in block@2: // after_if_else_L58 debug: Created Phi assignment: let a#3: bytes = undefined while trying to resolve 'a' in block@0: // L57 warning: Variable a potentially used before assignment -debug: Added a#3 to Phi node: let a#2: bytes = φ(a#3 <- block@0) in block@0: // L57 -debug: Added a#0 to Phi node: let a#2: bytes = φ(a#3 <- block@0, a#0 <- block@1) in block@1: // if_body_L58 -debug: Added a#2 to Phi node: let a#1: bytes = φ(a#2 <- block@3) in block@3: // if_body_L60 -debug: Added a#2 to Phi node: let a#1: bytes = φ(a#2 <- block@3, a#2 <- block@4) in block@4: // else_body_L60 +debug: Added a#3 to Phi node: let a#2: bytes = Phi(a#3 <- block@0) in block@0: // L57 +debug: Added a#0 to Phi node: let a#2: bytes = Phi(a#3 <- block@0, a#0 <- block@1) in block@1: // if_body_L58 +debug: Added a#2 to Phi node: let a#1: bytes = Phi(a#2 <- block@3) in block@3: // if_body_L60 +debug: Added a#2 to Phi node: let a#1: bytes = Phi(a#2 <- block@3, a#2 <- block@4) in block@4: // else_body_L60 debug: Replacing trivial Phi node: let a#1: bytes = φ(a#2 <- block@3, a#2 <- block@4) (a#1) with a#2 debug: Deleting Phi assignment: let a#1: bytes = φ(a#2 <- block@3, a#2 <- block@4) debug: Replaced trivial Phi node: let a#1: bytes = φ(a#2 <- block@3, a#2 <- block@4) (a#1) with a#2 in current definition for 1 blocks debug: Terminated block@6: // if_body_L64 debug: Created Phi assignment: let b#2: bytes = undefined while trying to resolve 'b' in block@5: // after_if_else_L60 -debug: Added b#0 to Phi node: let b#2: bytes = φ(b#0 <- block@3) in block@3: // if_body_L60 -debug: Added b#1 to Phi node: let b#2: bytes = φ(b#0 <- block@3, b#1 <- block@4) in block@4: // else_body_L60 +debug: Added b#0 to Phi node: let b#2: bytes = Phi(b#0 <- block@3) in block@3: // if_body_L60 +debug: Added b#1 to Phi node: let b#2: bytes = Phi(b#0 <- block@3, b#1 <- block@4) in block@4: // else_body_L60 debug: Terminated block@7: // else_body_L64 debug: Sealing block@8: // after_if_else_L64 debug: Created Phi assignment: let c#2: bytes = undefined while trying to resolve 'c' in block@8: // after_if_else_L64 -debug: Added c#0 to Phi node: let c#2: bytes = φ(c#0 <- block@6) in block@6: // if_body_L64 -debug: Added c#1 to Phi node: let c#2: bytes = φ(c#0 <- block@6, c#1 <- block@7) in block@7: // else_body_L64 +debug: Added c#0 to Phi node: let c#2: bytes = Phi(c#0 <- block@6) in block@6: // if_body_L64 +debug: Added c#1 to Phi node: let c#2: bytes = Phi(c#0 <- block@6, c#1 <- block@7) in block@7: // else_body_L64 debug: Terminated block@8: // after_if_else_L64 debug: Sealing block@0: // L76 debug: Terminated block@0: // L76 @@ -118,8 +118,8 @@ debug: Sealing block@None: // else_body_L77 debug: Terminated block@1: // if_body_L77 debug: Sealing block@2: // after_if_else_L77 debug: Created Phi assignment: let x#1: uint64 = undefined while trying to resolve 'x' in block@2: // after_if_else_L77 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0) in block@0: // L76 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) in block@1: // if_body_L77 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0) in block@0: // L76 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0, x#0 <- block@1) in block@1: // if_body_L77 debug: Replacing trivial Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) (x#1) with x#0 debug: Deleting Phi assignment: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) debug: Replaced trivial Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#0 <- block@1) (x#1) with x#0 in current definition for 1 blocks @@ -131,13 +131,13 @@ debug: Terminated block@4: // else_body_L79 debug: Sealing block@5: // after_if_else_L79 debug: Created Phi assignment: let y#1: uint64 = undefined while trying to resolve 'y' in block@5: // after_if_else_L79 debug: Created Phi assignment: let y#2: uint64 = undefined while trying to resolve 'y' in block@2: // after_if_else_L77 -debug: Added y#0 to Phi node: let y#2: uint64 = φ(y#0 <- block@0) in block@0: // L76 -debug: Added y#0 to Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) in block@1: // if_body_L77 +debug: Added y#0 to Phi node: let y#2: uint64 = Phi(y#0 <- block@0) in block@0: // L76 +debug: Added y#0 to Phi node: let y#2: uint64 = Phi(y#0 <- block@0, y#0 <- block@1) in block@1: // if_body_L77 debug: Replacing trivial Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) (y#2) with y#0 debug: Deleting Phi assignment: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) debug: Replaced trivial Phi node: let y#2: uint64 = φ(y#0 <- block@0, y#0 <- block@1) (y#2) with y#0 in current definition for 1 blocks -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@3) in block@3: // if_body_L79 -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) in block@4: // else_body_L79 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@3) in block@3: // if_body_L79 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@3, y#0 <- block@4) in block@4: // else_body_L79 debug: Replacing trivial Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) (y#1) with y#0 debug: Deleting Phi assignment: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) debug: Replaced trivial Phi node: let y#1: uint64 = φ(y#0 <- block@3, y#0 <- block@4) (y#1) with y#0 in current definition for 1 blocks @@ -148,22 +148,22 @@ debug: Created Phi assignment: let a#1: uint64 = undefined while trying to resol debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@2: // after_if_else_L77 debug: Created Phi assignment: let a#3: uint64 = undefined while trying to resolve 'a' in block@0: // L76 warning: Variable a potentially used before assignment -debug: Added a#3 to Phi node: let a#2: uint64 = φ(a#3 <- block@0) in block@0: // L76 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#3 <- block@0, a#0 <- block@1) in block@1: // if_body_L77 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#2 <- block@3) in block@3: // if_body_L79 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) in block@4: // else_body_L79 +debug: Added a#3 to Phi node: let a#2: uint64 = Phi(a#3 <- block@0) in block@0: // L76 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#3 <- block@0, a#0 <- block@1) in block@1: // if_body_L77 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#2 <- block@3) in block@3: // if_body_L79 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#2 <- block@3, a#2 <- block@4) in block@4: // else_body_L79 debug: Replacing trivial Phi node: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) (a#1) with a#2 debug: Deleting Phi assignment: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) debug: Replaced trivial Phi node: let a#1: uint64 = φ(a#2 <- block@3, a#2 <- block@4) (a#1) with a#2 in current definition for 1 blocks debug: Terminated block@6: // if_body_L83 debug: Created Phi assignment: let b#2: bytes = undefined while trying to resolve 'b' in block@5: // after_if_else_L79 -debug: Added b#0 to Phi node: let b#2: bytes = φ(b#0 <- block@3) in block@3: // if_body_L79 -debug: Added b#1 to Phi node: let b#2: bytes = φ(b#0 <- block@3, b#1 <- block@4) in block@4: // else_body_L79 +debug: Added b#0 to Phi node: let b#2: bytes = Phi(b#0 <- block@3) in block@3: // if_body_L79 +debug: Added b#1 to Phi node: let b#2: bytes = Phi(b#0 <- block@3, b#1 <- block@4) in block@4: // else_body_L79 debug: Terminated block@7: // else_body_L83 debug: Sealing block@8: // after_if_else_L83 debug: Created Phi assignment: let c#2: bytes = undefined while trying to resolve 'c' in block@8: // after_if_else_L83 -debug: Added c#0 to Phi node: let c#2: bytes = φ(c#0 <- block@6) in block@6: // if_body_L83 -debug: Added c#1 to Phi node: let c#2: bytes = φ(c#0 <- block@6, c#1 <- block@7) in block@7: // else_body_L83 +debug: Added c#0 to Phi node: let c#2: bytes = Phi(c#0 <- block@6) in block@6: // if_body_L83 +debug: Added c#1 to Phi node: let c#2: bytes = Phi(c#0 <- block@6, c#1 <- block@7) in block@7: // else_body_L83 debug: Terminated block@8: // after_if_else_L83 debug: Sealing block@0: // L5 debug: Terminated block@0: // L5 @@ -175,20 +175,20 @@ debug: Terminated block@2: // bool_true_L8 debug: Terminated block@3: // bool_false_L8 debug: Sealing block@4: // bool_merge_L8 debug: Created Phi assignment: let and_result%5#2: uint64 = undefined while trying to resolve 'and_result%5' in block@4: // bool_merge_L8 -debug: Added and_result%5#0 to Phi node: let and_result%5#2: uint64 = φ(and_result%5#0 <- block@2) in block@2: // bool_true_L8 -debug: Added and_result%5#1 to Phi node: let and_result%5#2: uint64 = φ(and_result%5#0 <- block@2, and_result%5#1 <- block@3) in block@3: // bool_false_L8 +debug: Added and_result%5#0 to Phi node: let and_result%5#2: uint64 = Phi(and_result%5#0 <- block@2) in block@2: // bool_true_L8 +debug: Added and_result%5#1 to Phi node: let and_result%5#2: uint64 = Phi(and_result%5#0 <- block@2, and_result%5#1 <- block@3) in block@3: // bool_false_L8 debug: Terminated block@4: // bool_merge_L8 debug: Sealing block@None: // if_body_L11 debug: Sealing block@None: // else_body_L11 debug: Created Phi assignment: let test_case#1: bytes = undefined while trying to resolve 'test_case' in block@4: // bool_merge_L8 -debug: Added test_case#0 to Phi node: let test_case#1: bytes = φ(test_case#0 <- block@2) in block@2: // bool_true_L8 +debug: Added test_case#0 to Phi node: let test_case#1: bytes = Phi(test_case#0 <- block@2) in block@2: // bool_true_L8 debug: Created Phi assignment: let test_case#2: bytes = undefined while trying to resolve 'test_case' in block@3: // bool_false_L8 -debug: Added test_case#0 to Phi node: let test_case#2: bytes = φ(test_case#0 <- block@0) in block@0: // L5 -debug: Added test_case#0 to Phi node: let test_case#2: bytes = φ(test_case#0 <- block@0, test_case#0 <- block@1) in block@1: // and_contd_L8 +debug: Added test_case#0 to Phi node: let test_case#2: bytes = Phi(test_case#0 <- block@0) in block@0: // L5 +debug: Added test_case#0 to Phi node: let test_case#2: bytes = Phi(test_case#0 <- block@0, test_case#0 <- block@1) in block@1: // and_contd_L8 debug: Replacing trivial Phi node: let test_case#2: bytes = φ(test_case#0 <- block@0, test_case#0 <- block@1) (test_case#2) with test_case#0 debug: Deleting Phi assignment: let test_case#2: bytes = φ(test_case#0 <- block@0, test_case#0 <- block@1) debug: Replaced trivial Phi node: let test_case#2: bytes = φ(test_case#0 <- block@0, test_case#0 <- block@1) (test_case#2) with test_case#0 in current definition for 1 blocks -debug: Added test_case#0 to Phi node: let test_case#1: bytes = φ(test_case#0 <- block@2, test_case#0 <- block@3) in block@3: // bool_false_L8 +debug: Added test_case#0 to Phi node: let test_case#1: bytes = Phi(test_case#0 <- block@2, test_case#0 <- block@3) in block@3: // bool_false_L8 debug: Replacing trivial Phi node: let test_case#1: bytes = φ(test_case#0 <- block@2, test_case#0 <- block@3) (test_case#1) with test_case#0 debug: Deleting Phi assignment: let test_case#1: bytes = φ(test_case#0 <- block@2, test_case#0 <- block@3) debug: Replaced trivial Phi node: let test_case#1: bytes = φ(test_case#0 <- block@2, test_case#0 <- block@3) (test_case#1) with test_case#0 in current definition for 1 blocks diff --git a/examples/unssa/puya.log b/examples/unssa/puya.log index 6215230eaf..8550873df7 100644 --- a/examples/unssa/puya.log +++ b/examples/unssa/puya.log @@ -24,13 +24,13 @@ debug: Terminated block@5: // if_body_L38 debug: Sealing block@6: // after_if_else_L38 debug: Terminated block@6: // after_if_else_L38 debug: Sealing block@1: // while_top_L35 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@0) in block@0: // L33 -debug: Added a#1 to Phi node: let a#1: uint64 = φ(a#0 <- block@0, a#1 <- block@3) in block@3: // if_body_L36 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#0 <- block@0, a#1 <- block@3, a#2 <- block@6) in block@6: // after_if_else_L38 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0) in block@0: // L33 +debug: Added a#1 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0, a#1 <- block@3) in block@3: // if_body_L36 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0, a#1 <- block@3, a#2 <- block@6) in block@6: // after_if_else_L38 debug: Sealing block@None: // after_while_L35 debug: Created Phi assignment: let a#3: uint64 = undefined while trying to resolve 'a' in block@7: // after_while_L35 -debug: Added a#1 to Phi node: let a#3: uint64 = φ(a#1 <- block@1) in block@1: // while_top_L35 -debug: Added a#1 to Phi node: let a#3: uint64 = φ(a#1 <- block@1, a#1 <- block@5) in block@5: // if_body_L38 +debug: Added a#1 to Phi node: let a#3: uint64 = Phi(a#1 <- block@1) in block@1: // while_top_L35 +debug: Added a#1 to Phi node: let a#3: uint64 = Phi(a#1 <- block@1, a#1 <- block@5) in block@5: // if_body_L38 debug: Replacing trivial Phi node: let a#3: uint64 = φ(a#1 <- block@1, a#1 <- block@5) (a#3) with a#1 debug: Deleting Phi assignment: let a#3: uint64 = φ(a#1 <- block@1, a#1 <- block@5) debug: Replaced trivial Phi node: let a#3: uint64 = φ(a#1 <- block@1, a#1 <- block@5) (a#3) with a#1 in current definition for 1 blocks @@ -47,12 +47,12 @@ debug: Looking for 'y' in an unsealed block creating an incomplete Phi: block@1: debug: Created Phi assignment: let y#1: uint64 = undefined while trying to resolve 'y' in block@1: // while_top_L48 debug: Terminated block@2: // while_body_L48 debug: Sealing block@1: // while_top_L48 -debug: Added i#0 to Phi node: let i#1: uint64 = φ(i#0 <- block@0) in block@0: // L45 -debug: Added i#2 to Phi node: let i#1: uint64 = φ(i#0 <- block@0, i#2 <- block@2) in block@2: // while_body_L48 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0) in block@0: // L45 -debug: Added x#2 to Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#2 <- block@2) in block@2: // while_body_L48 -debug: Added y#0 to Phi node: let y#1: uint64 = φ(y#0 <- block@0) in block@0: // L45 -debug: Added y#2 to Phi node: let y#1: uint64 = φ(y#0 <- block@0, y#2 <- block@2) in block@2: // while_body_L48 +debug: Added i#0 to Phi node: let i#1: uint64 = Phi(i#0 <- block@0) in block@0: // L45 +debug: Added i#2 to Phi node: let i#1: uint64 = Phi(i#0 <- block@0, i#2 <- block@2) in block@2: // while_body_L48 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0) in block@0: // L45 +debug: Added x#2 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0, x#2 <- block@2) in block@2: // while_body_L48 +debug: Added y#0 to Phi node: let y#1: uint64 = Phi(y#0 <- block@0) in block@0: // L45 +debug: Added y#2 to Phi node: let y#1: uint64 = Phi(y#0 <- block@0, y#2 <- block@2) in block@2: // while_body_L48 debug: Sealing block@None: // after_while_L48 debug: Terminated block@3: // after_while_L48 debug: Sealing block@0: // L57 @@ -74,33 +74,33 @@ debug: Terminated block@4: // while_body_L61 debug: Sealing block@3: // while_top_L61 debug: Looking for 'j' in an unsealed block creating an incomplete Phi: block@1: // while_top_L60 debug: Created Phi assignment: let j#3: uint64 = undefined while trying to resolve 'j' in block@1: // while_top_L60 -debug: Added j#3 to Phi node: let j#1: uint64 = φ(j#3 <- block@2) in block@2: // while_body_L60 -debug: Added j#2 to Phi node: let j#1: uint64 = φ(j#3 <- block@2, j#2 <- block@4) in block@4: // while_body_L61 +debug: Added j#3 to Phi node: let j#1: uint64 = Phi(j#3 <- block@2) in block@2: // while_body_L60 +debug: Added j#2 to Phi node: let j#1: uint64 = Phi(j#3 <- block@2, j#2 <- block@4) in block@4: // while_body_L61 debug: Looking for 'x' in an unsealed block creating an incomplete Phi: block@1: // while_top_L60 debug: Created Phi assignment: let x#3: uint64 = undefined while trying to resolve 'x' in block@1: // while_top_L60 -debug: Added x#3 to Phi node: let x#1: uint64 = φ(x#3 <- block@2) in block@2: // while_body_L60 -debug: Added x#2 to Phi node: let x#1: uint64 = φ(x#3 <- block@2, x#2 <- block@4) in block@4: // while_body_L61 +debug: Added x#3 to Phi node: let x#1: uint64 = Phi(x#3 <- block@2) in block@2: // while_body_L60 +debug: Added x#2 to Phi node: let x#1: uint64 = Phi(x#3 <- block@2, x#2 <- block@4) in block@4: // while_body_L61 debug: Looking for 'y' in an unsealed block creating an incomplete Phi: block@1: // while_top_L60 debug: Created Phi assignment: let y#3: uint64 = undefined while trying to resolve 'y' in block@1: // while_top_L60 -debug: Added y#3 to Phi node: let y#1: uint64 = φ(y#3 <- block@2) in block@2: // while_body_L60 -debug: Added y#2 to Phi node: let y#1: uint64 = φ(y#3 <- block@2, y#2 <- block@4) in block@4: // while_body_L61 +debug: Added y#3 to Phi node: let y#1: uint64 = Phi(y#3 <- block@2) in block@2: // while_body_L60 +debug: Added y#2 to Phi node: let y#1: uint64 = Phi(y#3 <- block@2, y#2 <- block@4) in block@4: // while_body_L61 debug: Sealing block@None: // after_while_L61 debug: Created Phi assignment: let i#2: uint64 = undefined while trying to resolve 'i' in block@3: // while_top_L61 -debug: Added i#1 to Phi node: let i#2: uint64 = φ(i#1 <- block@2) in block@2: // while_body_L60 -debug: Added i#2 to Phi node: let i#2: uint64 = φ(i#1 <- block@2, i#2 <- block@4) in block@4: // while_body_L61 +debug: Added i#1 to Phi node: let i#2: uint64 = Phi(i#1 <- block@2) in block@2: // while_body_L60 +debug: Added i#2 to Phi node: let i#2: uint64 = Phi(i#1 <- block@2, i#2 <- block@4) in block@4: // while_body_L61 debug: Replacing trivial Phi node: let i#2: uint64 = φ(i#1 <- block@2, i#2 <- block@4) (i#2) with i#1 debug: Deleting Phi assignment: let i#2: uint64 = φ(i#1 <- block@2, i#2 <- block@4) debug: Replaced trivial Phi node: let i#2: uint64 = φ(i#1 <- block@2, i#2 <- block@4) (i#2) with i#1 in current definition for 2 blocks debug: Terminated block@5: // after_while_L61 debug: Sealing block@1: // while_top_L60 -debug: Added i#0 to Phi node: let i#1: uint64 = φ(i#0 <- block@0) in block@0: // L57 -debug: Added i#3 to Phi node: let i#1: uint64 = φ(i#0 <- block@0, i#3 <- block@5) in block@5: // after_while_L61 -debug: Added j#0 to Phi node: let j#3: uint64 = φ(j#0 <- block@0) in block@0: // L57 -debug: Added j#1 to Phi node: let j#3: uint64 = φ(j#0 <- block@0, j#1 <- block@5) in block@5: // after_while_L61 -debug: Added x#0 to Phi node: let x#3: uint64 = φ(x#0 <- block@0) in block@0: // L57 -debug: Added x#1 to Phi node: let x#3: uint64 = φ(x#0 <- block@0, x#1 <- block@5) in block@5: // after_while_L61 -debug: Added y#0 to Phi node: let y#3: uint64 = φ(y#0 <- block@0) in block@0: // L57 -debug: Added y#1 to Phi node: let y#3: uint64 = φ(y#0 <- block@0, y#1 <- block@5) in block@5: // after_while_L61 +debug: Added i#0 to Phi node: let i#1: uint64 = Phi(i#0 <- block@0) in block@0: // L57 +debug: Added i#3 to Phi node: let i#1: uint64 = Phi(i#0 <- block@0, i#3 <- block@5) in block@5: // after_while_L61 +debug: Added j#0 to Phi node: let j#3: uint64 = Phi(j#0 <- block@0) in block@0: // L57 +debug: Added j#1 to Phi node: let j#3: uint64 = Phi(j#0 <- block@0, j#1 <- block@5) in block@5: // after_while_L61 +debug: Added x#0 to Phi node: let x#3: uint64 = Phi(x#0 <- block@0) in block@0: // L57 +debug: Added x#1 to Phi node: let x#3: uint64 = Phi(x#0 <- block@0, x#1 <- block@5) in block@5: // after_while_L61 +debug: Added y#0 to Phi node: let y#3: uint64 = Phi(y#0 <- block@0) in block@0: // L57 +debug: Added y#1 to Phi node: let y#3: uint64 = Phi(y#0 <- block@0, y#1 <- block@5) in block@5: // after_while_L61 debug: Sealing block@None: // after_while_L60 debug: Terminated block@6: // after_while_L60 debug: Sealing block@0: // L78 @@ -116,12 +116,12 @@ debug: Terminated block@3: // if_body_L81 debug: Sealing block@4: // after_if_else_L81 debug: Terminated block@4: // after_if_else_L81 debug: Sealing block@1: // while_top_L79 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@0) in block@0: // L78 -debug: Added x#2 to Phi node: let x#1: uint64 = φ(x#0 <- block@0, x#2 <- block@4) in block@4: // after_if_else_L81 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0) in block@0: // L78 +debug: Added x#2 to Phi node: let x#1: uint64 = Phi(x#0 <- block@0, x#2 <- block@4) in block@4: // after_if_else_L81 debug: Sealing block@None: // after_while_L79 debug: Created Phi assignment: let x#3: uint64 = undefined while trying to resolve 'x' in block@5: // after_while_L79 -debug: Added x#1 to Phi node: let x#3: uint64 = φ(x#1 <- block@1) in block@1: // while_top_L79 -debug: Added x#2 to Phi node: let x#3: uint64 = φ(x#1 <- block@1, x#2 <- block@3) in block@3: // if_body_L81 +debug: Added x#1 to Phi node: let x#3: uint64 = Phi(x#1 <- block@1) in block@1: // while_top_L79 +debug: Added x#2 to Phi node: let x#3: uint64 = Phi(x#1 <- block@1, x#2 <- block@3) in block@3: // if_body_L81 debug: Terminated block@5: // after_while_L79 debug: Sealing block@0: // L87 debug: Terminated block@0: // L87 @@ -136,15 +136,15 @@ debug: Terminated block@3: // if_body_L90 debug: Sealing block@4: // after_if_else_L90 debug: Terminated block@4: // after_if_else_L90 debug: Sealing block@1: // while_top_L89 -debug: Added x#1 to Phi node: let x#2: uint64 = φ(x#1 <- block@0) in block@0: // L87 -debug: Added x#2 to Phi node: let x#2: uint64 = φ(x#1 <- block@0, x#2 <- block@4) in block@4: // after_if_else_L90 +debug: Added x#1 to Phi node: let x#2: uint64 = Phi(x#1 <- block@0) in block@0: // L87 +debug: Added x#2 to Phi node: let x#2: uint64 = Phi(x#1 <- block@0, x#2 <- block@4) in block@4: // after_if_else_L90 debug: Replacing trivial Phi node: let x#2: uint64 = φ(x#1 <- block@0, x#2 <- block@4) (x#2) with x#1 debug: Deleting Phi assignment: let x#2: uint64 = φ(x#1 <- block@0, x#2 <- block@4) debug: Replaced trivial Phi node: let x#2: uint64 = φ(x#1 <- block@0, x#2 <- block@4) (x#2) with x#1 in current definition for 3 blocks debug: Sealing block@None: // after_while_L89 debug: Created Phi assignment: let x#3: uint64 = undefined while trying to resolve 'x' in block@5: // after_while_L89 -debug: Added x#1 to Phi node: let x#3: uint64 = φ(x#1 <- block@1) in block@1: // while_top_L89 -debug: Added x#1 to Phi node: let x#3: uint64 = φ(x#1 <- block@1, x#1 <- block@3) in block@3: // if_body_L90 +debug: Added x#1 to Phi node: let x#3: uint64 = Phi(x#1 <- block@1) in block@1: // while_top_L89 +debug: Added x#1 to Phi node: let x#3: uint64 = Phi(x#1 <- block@1, x#1 <- block@3) in block@3: // if_body_L90 debug: Replacing trivial Phi node: let x#3: uint64 = φ(x#1 <- block@1, x#1 <- block@3) (x#3) with x#1 debug: Deleting Phi assignment: let x#3: uint64 = φ(x#1 <- block@1, x#1 <- block@3) debug: Replaced trivial Phi node: let x#3: uint64 = φ(x#1 <- block@1, x#1 <- block@3) (x#3) with x#1 in current definition for 1 blocks @@ -183,12 +183,12 @@ debug: Sealing block@3: // for_footer_L72 debug: Sealing block@None: // after_for_L72 debug: Terminated block@3: // for_footer_L72 debug: Sealing block@1: // for_header_L72 -debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0) in block@0: // L71 -debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = φ(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L72 -debug: Added b#0 to Phi node: let b#1: uint64 = φ(b#0 <- block@0) in block@0: // L71 -debug: Added b#2 to Phi node: let b#1: uint64 = φ(b#0 <- block@0, b#2 <- block@3) in block@3: // for_footer_L72 -debug: Added a#0 to Phi node: let a#1: uint64 = φ(a#0 <- block@0) in block@0: // L71 -debug: Added a#2 to Phi node: let a#1: uint64 = φ(a#0 <- block@0, a#2 <- block@3) in block@3: // for_footer_L72 +debug: Added range_item%0#0 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0) in block@0: // L71 +debug: Added range_item%0#2 to Phi node: let range_item%0#1: uint64 = Phi(range_item%0#0 <- block@0, range_item%0#2 <- block@3) in block@3: // for_footer_L72 +debug: Added b#0 to Phi node: let b#1: uint64 = Phi(b#0 <- block@0) in block@0: // L71 +debug: Added b#2 to Phi node: let b#1: uint64 = Phi(b#0 <- block@0, b#2 <- block@3) in block@3: // for_footer_L72 +debug: Added a#0 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0) in block@0: // L71 +debug: Added a#2 to Phi node: let a#1: uint64 = Phi(a#0 <- block@0, a#2 <- block@3) in block@3: // for_footer_L72 debug: Terminated block@4: // after_for_L72 debug: Sealing block@0: // L5 debug: Terminated block@0: // L5 @@ -200,8 +200,8 @@ debug: Terminated block@2: // bool_true_L9 debug: Terminated block@3: // bool_false_L9 debug: Sealing block@4: // bool_merge_L9 debug: Created Phi assignment: let and_result%3#2: uint64 = undefined while trying to resolve 'and_result%3' in block@4: // bool_merge_L9 -debug: Added and_result%3#0 to Phi node: let and_result%3#2: uint64 = φ(and_result%3#0 <- block@2) in block@2: // bool_true_L9 -debug: Added and_result%3#1 to Phi node: let and_result%3#2: uint64 = φ(and_result%3#0 <- block@2, and_result%3#1 <- block@3) in block@3: // bool_false_L9 +debug: Added and_result%3#0 to Phi node: let and_result%3#2: uint64 = Phi(and_result%3#0 <- block@2) in block@2: // bool_true_L9 +debug: Added and_result%3#1 to Phi node: let and_result%3#2: uint64 = Phi(and_result%3#0 <- block@2, and_result%3#1 <- block@3) in block@3: // bool_false_L9 debug: Terminated block@4: // bool_merge_L9 debug: Sealing block@None: // and_contd_L12 debug: Terminated block@5: // and_contd_L12 @@ -211,8 +211,8 @@ debug: Terminated block@6: // bool_true_L12 debug: Terminated block@7: // bool_false_L12 debug: Sealing block@8: // bool_merge_L12 debug: Created Phi assignment: let and_result%7#2: uint64 = undefined while trying to resolve 'and_result%7' in block@8: // bool_merge_L12 -debug: Added and_result%7#0 to Phi node: let and_result%7#2: uint64 = φ(and_result%7#0 <- block@6) in block@6: // bool_true_L12 -debug: Added and_result%7#1 to Phi node: let and_result%7#2: uint64 = φ(and_result%7#0 <- block@6, and_result%7#1 <- block@7) in block@7: // bool_false_L12 +debug: Added and_result%7#0 to Phi node: let and_result%7#2: uint64 = Phi(and_result%7#0 <- block@6) in block@6: // bool_true_L12 +debug: Added and_result%7#1 to Phi node: let and_result%7#2: uint64 = Phi(and_result%7#0 <- block@6, and_result%7#1 <- block@7) in block@7: // bool_false_L12 debug: Terminated block@8: // bool_merge_L12 debug: Sealing block@0: // L28 debug: Terminated block@0: // L28 diff --git a/examples/voting/puya.log b/examples/voting/puya.log index c852f9e939..6bbd1639e3 100644 --- a/examples/voting/puya.log +++ b/examples/voting/puya.log @@ -11,41 +11,41 @@ debug: Terminated block@1: // ternary_true_L90 debug: Terminated block@2: // ternary_false_L90 debug: Sealing block@3: // ternary_merge_L90 debug: Created Phi assignment: let ternary_result%6#2: uint64 = undefined while trying to resolve 'ternary_result%6' in block@3: // ternary_merge_L90 -debug: Added ternary_result%6#0 to Phi node: let ternary_result%6#2: uint64 = φ(ternary_result%6#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added ternary_result%6#1 to Phi node: let ternary_result%6#2: uint64 = φ(ternary_result%6#0 <- block@1, ternary_result%6#1 <- block@2) in block@2: // ternary_false_L90 +debug: Added ternary_result%6#0 to Phi node: let ternary_result%6#2: uint64 = Phi(ternary_result%6#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added ternary_result%6#1 to Phi node: let ternary_result%6#2: uint64 = Phi(ternary_result%6#0 <- block@1, ternary_result%6#1 <- block@2) in block@2: // ternary_false_L90 debug: Created Phi assignment: let metadata_ipfs_cid#1: bytes = undefined while trying to resolve 'metadata_ipfs_cid' in block@3: // ternary_merge_L90 -debug: Added metadata_ipfs_cid#0 to Phi node: let metadata_ipfs_cid#1: bytes = φ(metadata_ipfs_cid#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added metadata_ipfs_cid#0 to Phi node: let metadata_ipfs_cid#1: bytes = φ(metadata_ipfs_cid#0 <- block@1, metadata_ipfs_cid#0 <- block@2) in block@2: // ternary_false_L90 +debug: Added metadata_ipfs_cid#0 to Phi node: let metadata_ipfs_cid#1: bytes = Phi(metadata_ipfs_cid#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added metadata_ipfs_cid#0 to Phi node: let metadata_ipfs_cid#1: bytes = Phi(metadata_ipfs_cid#0 <- block@1, metadata_ipfs_cid#0 <- block@2) in block@2: // ternary_false_L90 debug: Replacing trivial Phi node: let metadata_ipfs_cid#1: bytes = φ(metadata_ipfs_cid#0 <- block@1, metadata_ipfs_cid#0 <- block@2) (metadata_ipfs_cid#1) with metadata_ipfs_cid#0 debug: Deleting Phi assignment: let metadata_ipfs_cid#1: bytes = φ(metadata_ipfs_cid#0 <- block@1, metadata_ipfs_cid#0 <- block@2) debug: Replaced trivial Phi node: let metadata_ipfs_cid#1: bytes = φ(metadata_ipfs_cid#0 <- block@1, metadata_ipfs_cid#0 <- block@2) (metadata_ipfs_cid#1) with metadata_ipfs_cid#0 in current definition for 1 blocks debug: Created Phi assignment: let st#1: uint64 = undefined while trying to resolve 'st' in block@3: // ternary_merge_L90 -debug: Added st#0 to Phi node: let st#1: uint64 = φ(st#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added st#0 to Phi node: let st#1: uint64 = φ(st#0 <- block@1, st#0 <- block@2) in block@2: // ternary_false_L90 +debug: Added st#0 to Phi node: let st#1: uint64 = Phi(st#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added st#0 to Phi node: let st#1: uint64 = Phi(st#0 <- block@1, st#0 <- block@2) in block@2: // ternary_false_L90 debug: Replacing trivial Phi node: let st#1: uint64 = φ(st#0 <- block@1, st#0 <- block@2) (st#1) with st#0 debug: Deleting Phi assignment: let st#1: uint64 = φ(st#0 <- block@1, st#0 <- block@2) debug: Replaced trivial Phi node: let st#1: uint64 = φ(st#0 <- block@1, st#0 <- block@2) (st#1) with st#0 in current definition for 1 blocks debug: Created Phi assignment: let et#1: uint64 = undefined while trying to resolve 'et' in block@3: // ternary_merge_L90 -debug: Added et#0 to Phi node: let et#1: uint64 = φ(et#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added et#0 to Phi node: let et#1: uint64 = φ(et#0 <- block@1, et#0 <- block@2) in block@2: // ternary_false_L90 +debug: Added et#0 to Phi node: let et#1: uint64 = Phi(et#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added et#0 to Phi node: let et#1: uint64 = Phi(et#0 <- block@1, et#0 <- block@2) in block@2: // ternary_false_L90 debug: Replacing trivial Phi node: let et#1: uint64 = φ(et#0 <- block@1, et#0 <- block@2) (et#1) with et#0 debug: Deleting Phi assignment: let et#1: uint64 = φ(et#0 <- block@1, et#0 <- block@2) debug: Replaced trivial Phi node: let et#1: uint64 = φ(et#0 <- block@1, et#0 <- block@2) (et#1) with et#0 in current definition for 1 blocks debug: Created Phi assignment: let quorum#1: bytes = undefined while trying to resolve 'quorum' in block@3: // ternary_merge_L90 -debug: Added quorum#0 to Phi node: let quorum#1: bytes = φ(quorum#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added quorum#0 to Phi node: let quorum#1: bytes = φ(quorum#0 <- block@1, quorum#0 <- block@2) in block@2: // ternary_false_L90 +debug: Added quorum#0 to Phi node: let quorum#1: bytes = Phi(quorum#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added quorum#0 to Phi node: let quorum#1: bytes = Phi(quorum#0 <- block@1, quorum#0 <- block@2) in block@2: // ternary_false_L90 debug: Replacing trivial Phi node: let quorum#1: bytes = φ(quorum#0 <- block@1, quorum#0 <- block@2) (quorum#1) with quorum#0 debug: Deleting Phi assignment: let quorum#1: bytes = φ(quorum#0 <- block@1, quorum#0 <- block@2) debug: Replaced trivial Phi node: let quorum#1: bytes = φ(quorum#0 <- block@1, quorum#0 <- block@2) (quorum#1) with quorum#0 in current definition for 1 blocks debug: Created Phi assignment: let nft_image_url#1: bytes = undefined while trying to resolve 'nft_image_url' in block@3: // ternary_merge_L90 -debug: Added nft_image_url#0 to Phi node: let nft_image_url#1: bytes = φ(nft_image_url#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added nft_image_url#0 to Phi node: let nft_image_url#1: bytes = φ(nft_image_url#0 <- block@1, nft_image_url#0 <- block@2) in block@2: // ternary_false_L90 +debug: Added nft_image_url#0 to Phi node: let nft_image_url#1: bytes = Phi(nft_image_url#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added nft_image_url#0 to Phi node: let nft_image_url#1: bytes = Phi(nft_image_url#0 <- block@1, nft_image_url#0 <- block@2) in block@2: // ternary_false_L90 debug: Replacing trivial Phi node: let nft_image_url#1: bytes = φ(nft_image_url#0 <- block@1, nft_image_url#0 <- block@2) (nft_image_url#1) with nft_image_url#0 debug: Deleting Phi assignment: let nft_image_url#1: bytes = φ(nft_image_url#0 <- block@1, nft_image_url#0 <- block@2) debug: Replaced trivial Phi node: let nft_image_url#1: bytes = φ(nft_image_url#0 <- block@1, nft_image_url#0 <- block@2) (nft_image_url#1) with nft_image_url#0 in current definition for 1 blocks debug: Created Phi assignment: let option_counts#1: bytes = undefined while trying to resolve 'option_counts' in block@3: // ternary_merge_L90 -debug: Added option_counts#0 to Phi node: let option_counts#1: bytes = φ(option_counts#0 <- block@1) in block@1: // ternary_true_L90 -debug: Added option_counts#0 to Phi node: let option_counts#1: bytes = φ(option_counts#0 <- block@1, option_counts#0 <- block@2) in block@2: // ternary_false_L90 +debug: Added option_counts#0 to Phi node: let option_counts#1: bytes = Phi(option_counts#0 <- block@1) in block@1: // ternary_true_L90 +debug: Added option_counts#0 to Phi node: let option_counts#1: bytes = Phi(option_counts#0 <- block@1, option_counts#0 <- block@2) in block@2: // ternary_false_L90 debug: Replacing trivial Phi node: let option_counts#1: bytes = φ(option_counts#0 <- block@1, option_counts#0 <- block@2) (option_counts#1) with option_counts#0 debug: Deleting Phi assignment: let option_counts#1: bytes = φ(option_counts#0 <- block@1, option_counts#0 <- block@2) debug: Replaced trivial Phi node: let option_counts#1: bytes = φ(option_counts#0 <- block@1, option_counts#0 <- block@2) (option_counts#1) with option_counts#0 in current definition for 1 blocks @@ -65,10 +65,10 @@ debug: Sealing block@3: // for_footer_L247 debug: Sealing block@None: // after_for_L247 debug: Terminated block@3: // for_footer_L247 debug: Sealing block@1: // for_header_L247 -debug: Added item_index_internal%2#0 to Phi node: let item_index_internal%2#1: uint64 = φ(item_index_internal%2#0 <- block@0) in block@0: // L245 -debug: Added item_index_internal%2#2 to Phi node: let item_index_internal%2#1: uint64 = φ(item_index_internal%2#0 <- block@0, item_index_internal%2#2 <- block@3) in block@3: // for_footer_L247 -debug: Added total#0 to Phi node: let total#1: uint64 = φ(total#0 <- block@0) in block@0: // L245 -debug: Added total#2 to Phi node: let total#1: uint64 = φ(total#0 <- block@0, total#2 <- block@3) in block@3: // for_footer_L247 +debug: Added item_index_internal%2#0 to Phi node: let item_index_internal%2#1: uint64 = Phi(item_index_internal%2#0 <- block@0) in block@0: // L245 +debug: Added item_index_internal%2#2 to Phi node: let item_index_internal%2#1: uint64 = Phi(item_index_internal%2#0 <- block@0, item_index_internal%2#2 <- block@3) in block@3: // for_footer_L247 +debug: Added total#0 to Phi node: let total#1: uint64 = Phi(total#0 <- block@0) in block@0: // L245 +debug: Added total#2 to Phi node: let total#1: uint64 = Phi(total#0 <- block@0, total#2 <- block@3) in block@3: // for_footer_L247 debug: Terminated block@4: // after_for_L247 debug: Sealing block@0: // L99 debug: Terminated block@0: // L99 @@ -106,33 +106,33 @@ debug: Terminated block@9: // ternary_true_L153 debug: Terminated block@10: // ternary_false_L153 debug: Sealing block@11: // ternary_merge_L153 debug: Created Phi assignment: let ternary_result%51#2: bytes = undefined while trying to resolve 'ternary_result%51' in block@11: // ternary_merge_L153 -debug: Added ternary_result%51#0 to Phi node: let ternary_result%51#2: bytes = φ(ternary_result%51#0 <- block@9) in block@9: // ternary_true_L153 -debug: Added ternary_result%51#1 to Phi node: let ternary_result%51#2: bytes = φ(ternary_result%51#0 <- block@9, ternary_result%51#1 <- block@10) in block@10: // ternary_false_L153 +debug: Added ternary_result%51#0 to Phi node: let ternary_result%51#2: bytes = Phi(ternary_result%51#0 <- block@9) in block@9: // ternary_true_L153 +debug: Added ternary_result%51#1 to Phi node: let ternary_result%51#2: bytes = Phi(ternary_result%51#0 <- block@9, ternary_result%51#1 <- block@10) in block@10: // ternary_false_L153 debug: Terminated block@11: // ternary_merge_L153 debug: Sealing block@12: // ternary_merge_L151 debug: Created Phi assignment: let ternary_result%43#2: bytes = undefined while trying to resolve 'ternary_result%43' in block@12: // ternary_merge_L151 -debug: Added ternary_result%43#0 to Phi node: let ternary_result%43#2: bytes = φ(ternary_result%43#0 <- block@7) in block@7: // ternary_true_L151 -debug: Added ternary_result%43#1 to Phi node: let ternary_result%43#2: bytes = φ(ternary_result%43#0 <- block@7, ternary_result%43#1 <- block@11) in block@11: // ternary_merge_L153 +debug: Added ternary_result%43#0 to Phi node: let ternary_result%43#2: bytes = Phi(ternary_result%43#0 <- block@7) in block@7: // ternary_true_L151 +debug: Added ternary_result%43#1 to Phi node: let ternary_result%43#2: bytes = Phi(ternary_result%43#0 <- block@7, ternary_result%43#1 <- block@11) in block@11: // ternary_merge_L153 debug: Terminated block@12: // ternary_merge_L151 debug: Sealing block@13: // ternary_merge_L149 debug: Created Phi assignment: let ternary_result%40#2: bytes = undefined while trying to resolve 'ternary_result%40' in block@13: // ternary_merge_L149 -debug: Added ternary_result%40#0 to Phi node: let ternary_result%40#2: bytes = φ(ternary_result%40#0 <- block@5) in block@5: // ternary_true_L149 -debug: Added ternary_result%40#1 to Phi node: let ternary_result%40#2: bytes = φ(ternary_result%40#0 <- block@5, ternary_result%40#1 <- block@12) in block@12: // ternary_merge_L151 +debug: Added ternary_result%40#0 to Phi node: let ternary_result%40#2: bytes = Phi(ternary_result%40#0 <- block@5) in block@5: // ternary_true_L149 +debug: Added ternary_result%40#1 to Phi node: let ternary_result%40#2: bytes = Phi(ternary_result%40#0 <- block@5, ternary_result%40#1 <- block@12) in block@12: // ternary_merge_L151 debug: Created Phi assignment: let current_index#2: uint64 = undefined while trying to resolve 'current_index' in block@13: // ternary_merge_L149 -debug: Added current_index#1 to Phi node: let current_index#2: uint64 = φ(current_index#1 <- block@5) in block@5: // ternary_true_L149 +debug: Added current_index#1 to Phi node: let current_index#2: uint64 = Phi(current_index#1 <- block@5) in block@5: // ternary_true_L149 debug: Created Phi assignment: let current_index#3: uint64 = undefined while trying to resolve 'current_index' in block@12: // ternary_merge_L151 -debug: Added current_index#1 to Phi node: let current_index#3: uint64 = φ(current_index#1 <- block@7) in block@7: // ternary_true_L151 +debug: Added current_index#1 to Phi node: let current_index#3: uint64 = Phi(current_index#1 <- block@7) in block@7: // ternary_true_L151 debug: Created Phi assignment: let current_index#4: uint64 = undefined while trying to resolve 'current_index' in block@11: // ternary_merge_L153 -debug: Added current_index#1 to Phi node: let current_index#4: uint64 = φ(current_index#1 <- block@9) in block@9: // ternary_true_L153 -debug: Added current_index#1 to Phi node: let current_index#4: uint64 = φ(current_index#1 <- block@9, current_index#1 <- block@10) in block@10: // ternary_false_L153 +debug: Added current_index#1 to Phi node: let current_index#4: uint64 = Phi(current_index#1 <- block@9) in block@9: // ternary_true_L153 +debug: Added current_index#1 to Phi node: let current_index#4: uint64 = Phi(current_index#1 <- block@9, current_index#1 <- block@10) in block@10: // ternary_false_L153 debug: Replacing trivial Phi node: let current_index#4: uint64 = φ(current_index#1 <- block@9, current_index#1 <- block@10) (current_index#4) with current_index#1 debug: Deleting Phi assignment: let current_index#4: uint64 = φ(current_index#1 <- block@9, current_index#1 <- block@10) debug: Replaced trivial Phi node: let current_index#4: uint64 = φ(current_index#1 <- block@9, current_index#1 <- block@10) (current_index#4) with current_index#1 in current definition for 1 blocks -debug: Added current_index#1 to Phi node: let current_index#3: uint64 = φ(current_index#1 <- block@7, current_index#1 <- block@11) in block@11: // ternary_merge_L153 +debug: Added current_index#1 to Phi node: let current_index#3: uint64 = Phi(current_index#1 <- block@7, current_index#1 <- block@11) in block@11: // ternary_merge_L153 debug: Replacing trivial Phi node: let current_index#3: uint64 = φ(current_index#1 <- block@7, current_index#1 <- block@11) (current_index#3) with current_index#1 debug: Deleting Phi assignment: let current_index#3: uint64 = φ(current_index#1 <- block@7, current_index#1 <- block@11) debug: Replaced trivial Phi node: let current_index#3: uint64 = φ(current_index#1 <- block@7, current_index#1 <- block@11) (current_index#3) with current_index#1 in current definition for 1 blocks -debug: Added current_index#1 to Phi node: let current_index#2: uint64 = φ(current_index#1 <- block@5, current_index#1 <- block@12) in block@12: // ternary_merge_L151 +debug: Added current_index#1 to Phi node: let current_index#2: uint64 = Phi(current_index#1 <- block@5, current_index#1 <- block@12) in block@12: // ternary_merge_L151 debug: Replacing trivial Phi node: let current_index#2: uint64 = φ(current_index#1 <- block@5, current_index#1 <- block@12) (current_index#2) with current_index#1 debug: Deleting Phi assignment: let current_index#2: uint64 = φ(current_index#1 <- block@5, current_index#1 <- block@12) debug: Replaced trivial Phi node: let current_index#2: uint64 = φ(current_index#1 <- block@5, current_index#1 <- block@12) (current_index#2) with current_index#1 in current definition for 1 blocks @@ -140,78 +140,78 @@ debug: Terminated block@13: // ternary_merge_L149 debug: Sealing block@14: // for_footer_L146 debug: Sealing block@None: // after_for_L146 debug: Created Phi assignment: let range_item%37#2: uint64 = undefined while trying to resolve 'range_item%37' in block@13: // ternary_merge_L149 -debug: Added range_item%37#1 to Phi node: let range_item%37#2: uint64 = φ(range_item%37#1 <- block@5) in block@5: // ternary_true_L149 +debug: Added range_item%37#1 to Phi node: let range_item%37#2: uint64 = Phi(range_item%37#1 <- block@5) in block@5: // ternary_true_L149 debug: Created Phi assignment: let range_item%37#3: uint64 = undefined while trying to resolve 'range_item%37' in block@12: // ternary_merge_L151 -debug: Added range_item%37#1 to Phi node: let range_item%37#3: uint64 = φ(range_item%37#1 <- block@7) in block@7: // ternary_true_L151 +debug: Added range_item%37#1 to Phi node: let range_item%37#3: uint64 = Phi(range_item%37#1 <- block@7) in block@7: // ternary_true_L151 debug: Created Phi assignment: let range_item%37#4: uint64 = undefined while trying to resolve 'range_item%37' in block@11: // ternary_merge_L153 -debug: Added range_item%37#1 to Phi node: let range_item%37#4: uint64 = φ(range_item%37#1 <- block@9) in block@9: // ternary_true_L153 -debug: Added range_item%37#1 to Phi node: let range_item%37#4: uint64 = φ(range_item%37#1 <- block@9, range_item%37#1 <- block@10) in block@10: // ternary_false_L153 +debug: Added range_item%37#1 to Phi node: let range_item%37#4: uint64 = Phi(range_item%37#1 <- block@9) in block@9: // ternary_true_L153 +debug: Added range_item%37#1 to Phi node: let range_item%37#4: uint64 = Phi(range_item%37#1 <- block@9, range_item%37#1 <- block@10) in block@10: // ternary_false_L153 debug: Replacing trivial Phi node: let range_item%37#4: uint64 = φ(range_item%37#1 <- block@9, range_item%37#1 <- block@10) (range_item%37#4) with range_item%37#1 debug: Deleting Phi assignment: let range_item%37#4: uint64 = φ(range_item%37#1 <- block@9, range_item%37#1 <- block@10) debug: Replaced trivial Phi node: let range_item%37#4: uint64 = φ(range_item%37#1 <- block@9, range_item%37#1 <- block@10) (range_item%37#4) with range_item%37#1 in current definition for 1 blocks -debug: Added range_item%37#1 to Phi node: let range_item%37#3: uint64 = φ(range_item%37#1 <- block@7, range_item%37#1 <- block@11) in block@11: // ternary_merge_L153 +debug: Added range_item%37#1 to Phi node: let range_item%37#3: uint64 = Phi(range_item%37#1 <- block@7, range_item%37#1 <- block@11) in block@11: // ternary_merge_L153 debug: Replacing trivial Phi node: let range_item%37#3: uint64 = φ(range_item%37#1 <- block@7, range_item%37#1 <- block@11) (range_item%37#3) with range_item%37#1 debug: Deleting Phi assignment: let range_item%37#3: uint64 = φ(range_item%37#1 <- block@7, range_item%37#1 <- block@11) debug: Replaced trivial Phi node: let range_item%37#3: uint64 = φ(range_item%37#1 <- block@7, range_item%37#1 <- block@11) (range_item%37#3) with range_item%37#1 in current definition for 1 blocks -debug: Added range_item%37#1 to Phi node: let range_item%37#2: uint64 = φ(range_item%37#1 <- block@5, range_item%37#1 <- block@12) in block@12: // ternary_merge_L151 +debug: Added range_item%37#1 to Phi node: let range_item%37#2: uint64 = Phi(range_item%37#1 <- block@5, range_item%37#1 <- block@12) in block@12: // ternary_merge_L151 debug: Replacing trivial Phi node: let range_item%37#2: uint64 = φ(range_item%37#1 <- block@5, range_item%37#1 <- block@12) (range_item%37#2) with range_item%37#1 debug: Deleting Phi assignment: let range_item%37#2: uint64 = φ(range_item%37#1 <- block@5, range_item%37#1 <- block@12) debug: Replaced trivial Phi node: let range_item%37#2: uint64 = φ(range_item%37#1 <- block@5, range_item%37#1 <- block@12) (range_item%37#2) with range_item%37#1 in current definition for 1 blocks debug: Terminated block@14: // for_footer_L146 debug: Sealing block@3: // for_header_L146 -debug: Added range_item%37#0 to Phi node: let range_item%37#1: uint64 = φ(range_item%37#0 <- block@2) in block@2: // for_body_L144 -debug: Added range_item%37#5 to Phi node: let range_item%37#1: uint64 = φ(range_item%37#0 <- block@2, range_item%37#5 <- block@14) in block@14: // for_footer_L146 +debug: Added range_item%37#0 to Phi node: let range_item%37#1: uint64 = Phi(range_item%37#0 <- block@2) in block@2: // for_body_L144 +debug: Added range_item%37#5 to Phi node: let range_item%37#1: uint64 = Phi(range_item%37#0 <- block@2, range_item%37#5 <- block@14) in block@14: // for_footer_L146 debug: Looking for 'current_index' in an unsealed block creating an incomplete Phi: block@1: // for_header_L144 debug: Created Phi assignment: let current_index#6: uint64 = undefined while trying to resolve 'current_index' in block@1: // for_header_L144 -debug: Added current_index#6 to Phi node: let current_index#1: uint64 = φ(current_index#6 <- block@2) in block@2: // for_body_L144 -debug: Added current_index#5 to Phi node: let current_index#1: uint64 = φ(current_index#6 <- block@2, current_index#5 <- block@14) in block@14: // for_footer_L146 +debug: Added current_index#6 to Phi node: let current_index#1: uint64 = Phi(current_index#6 <- block@2) in block@2: // for_body_L144 +debug: Added current_index#5 to Phi node: let current_index#1: uint64 = Phi(current_index#6 <- block@2, current_index#5 <- block@14) in block@14: // for_footer_L146 debug: Looking for 'note' in an unsealed block creating an incomplete Phi: block@1: // for_header_L144 debug: Created Phi assignment: let note#3: bytes = undefined while trying to resolve 'note' in block@1: // for_header_L144 -debug: Added note#3 to Phi node: let note#1: bytes = φ(note#3 <- block@2) in block@2: // for_body_L144 -debug: Added note#2 to Phi node: let note#1: bytes = φ(note#3 <- block@2, note#2 <- block@14) in block@14: // for_footer_L146 -debug: Added question_options#0 to Phi node: let question_options#1: uint64 = φ(question_options#0 <- block@2) in block@2: // for_body_L144 +debug: Added note#3 to Phi node: let note#1: bytes = Phi(note#3 <- block@2) in block@2: // for_body_L144 +debug: Added note#2 to Phi node: let note#1: bytes = Phi(note#3 <- block@2, note#2 <- block@14) in block@14: // for_footer_L146 +debug: Added question_options#0 to Phi node: let question_options#1: uint64 = Phi(question_options#0 <- block@2) in block@2: // for_body_L144 debug: Created Phi assignment: let question_options#2: uint64 = undefined while trying to resolve 'question_options' in block@13: // ternary_merge_L149 -debug: Added question_options#1 to Phi node: let question_options#2: uint64 = φ(question_options#1 <- block@5) in block@5: // ternary_true_L149 +debug: Added question_options#1 to Phi node: let question_options#2: uint64 = Phi(question_options#1 <- block@5) in block@5: // ternary_true_L149 debug: Created Phi assignment: let question_options#3: uint64 = undefined while trying to resolve 'question_options' in block@12: // ternary_merge_L151 -debug: Added question_options#1 to Phi node: let question_options#3: uint64 = φ(question_options#1 <- block@7) in block@7: // ternary_true_L151 +debug: Added question_options#1 to Phi node: let question_options#3: uint64 = Phi(question_options#1 <- block@7) in block@7: // ternary_true_L151 debug: Created Phi assignment: let question_options#4: uint64 = undefined while trying to resolve 'question_options' in block@11: // ternary_merge_L153 -debug: Added question_options#1 to Phi node: let question_options#4: uint64 = φ(question_options#1 <- block@9) in block@9: // ternary_true_L153 -debug: Added question_options#1 to Phi node: let question_options#4: uint64 = φ(question_options#1 <- block@9, question_options#1 <- block@10) in block@10: // ternary_false_L153 +debug: Added question_options#1 to Phi node: let question_options#4: uint64 = Phi(question_options#1 <- block@9) in block@9: // ternary_true_L153 +debug: Added question_options#1 to Phi node: let question_options#4: uint64 = Phi(question_options#1 <- block@9, question_options#1 <- block@10) in block@10: // ternary_false_L153 debug: Replacing trivial Phi node: let question_options#4: uint64 = φ(question_options#1 <- block@9, question_options#1 <- block@10) (question_options#4) with question_options#1 debug: Deleting Phi assignment: let question_options#4: uint64 = φ(question_options#1 <- block@9, question_options#1 <- block@10) debug: Replaced trivial Phi node: let question_options#4: uint64 = φ(question_options#1 <- block@9, question_options#1 <- block@10) (question_options#4) with question_options#1 in current definition for 1 blocks -debug: Added question_options#1 to Phi node: let question_options#3: uint64 = φ(question_options#1 <- block@7, question_options#1 <- block@11) in block@11: // ternary_merge_L153 +debug: Added question_options#1 to Phi node: let question_options#3: uint64 = Phi(question_options#1 <- block@7, question_options#1 <- block@11) in block@11: // ternary_merge_L153 debug: Replacing trivial Phi node: let question_options#3: uint64 = φ(question_options#1 <- block@7, question_options#1 <- block@11) (question_options#3) with question_options#1 debug: Deleting Phi assignment: let question_options#3: uint64 = φ(question_options#1 <- block@7, question_options#1 <- block@11) debug: Replaced trivial Phi node: let question_options#3: uint64 = φ(question_options#1 <- block@7, question_options#1 <- block@11) (question_options#3) with question_options#1 in current definition for 1 blocks -debug: Added question_options#1 to Phi node: let question_options#2: uint64 = φ(question_options#1 <- block@5, question_options#1 <- block@12) in block@12: // ternary_merge_L151 +debug: Added question_options#1 to Phi node: let question_options#2: uint64 = Phi(question_options#1 <- block@5, question_options#1 <- block@12) in block@12: // ternary_merge_L151 debug: Replacing trivial Phi node: let question_options#2: uint64 = φ(question_options#1 <- block@5, question_options#1 <- block@12) (question_options#2) with question_options#1 debug: Deleting Phi assignment: let question_options#2: uint64 = φ(question_options#1 <- block@5, question_options#1 <- block@12) debug: Replaced trivial Phi node: let question_options#2: uint64 = φ(question_options#1 <- block@5, question_options#1 <- block@12) (question_options#2) with question_options#1 in current definition for 1 blocks -debug: Added question_options#1 to Phi node: let question_options#1: uint64 = φ(question_options#0 <- block@2, question_options#1 <- block@14) in block@14: // for_footer_L146 +debug: Added question_options#1 to Phi node: let question_options#1: uint64 = Phi(question_options#0 <- block@2, question_options#1 <- block@14) in block@14: // for_footer_L146 debug: Replacing trivial Phi node: let question_options#1: uint64 = φ(question_options#0 <- block@2, question_options#1 <- block@14) (question_options#1) with question_options#0 debug: Deleting Phi assignment: let question_options#1: uint64 = φ(question_options#0 <- block@2, question_options#1 <- block@14) debug: Replaced trivial Phi node: let question_options#1: uint64 = φ(question_options#0 <- block@2, question_options#1 <- block@14) (question_options#1) with question_options#0 in current definition for 12 blocks -debug: Added question_index#0 to Phi node: let question_index#1: uint64 = φ(question_index#0 <- block@2) in block@2: // for_body_L144 +debug: Added question_index#0 to Phi node: let question_index#1: uint64 = Phi(question_index#0 <- block@2) in block@2: // for_body_L144 debug: Created Phi assignment: let question_index#2: uint64 = undefined while trying to resolve 'question_index' in block@13: // ternary_merge_L149 -debug: Added question_index#1 to Phi node: let question_index#2: uint64 = φ(question_index#1 <- block@5) in block@5: // ternary_true_L149 +debug: Added question_index#1 to Phi node: let question_index#2: uint64 = Phi(question_index#1 <- block@5) in block@5: // ternary_true_L149 debug: Created Phi assignment: let question_index#3: uint64 = undefined while trying to resolve 'question_index' in block@12: // ternary_merge_L151 -debug: Added question_index#1 to Phi node: let question_index#3: uint64 = φ(question_index#1 <- block@7) in block@7: // ternary_true_L151 +debug: Added question_index#1 to Phi node: let question_index#3: uint64 = Phi(question_index#1 <- block@7) in block@7: // ternary_true_L151 debug: Created Phi assignment: let question_index#4: uint64 = undefined while trying to resolve 'question_index' in block@11: // ternary_merge_L153 -debug: Added question_index#1 to Phi node: let question_index#4: uint64 = φ(question_index#1 <- block@9) in block@9: // ternary_true_L153 -debug: Added question_index#1 to Phi node: let question_index#4: uint64 = φ(question_index#1 <- block@9, question_index#1 <- block@10) in block@10: // ternary_false_L153 +debug: Added question_index#1 to Phi node: let question_index#4: uint64 = Phi(question_index#1 <- block@9) in block@9: // ternary_true_L153 +debug: Added question_index#1 to Phi node: let question_index#4: uint64 = Phi(question_index#1 <- block@9, question_index#1 <- block@10) in block@10: // ternary_false_L153 debug: Replacing trivial Phi node: let question_index#4: uint64 = φ(question_index#1 <- block@9, question_index#1 <- block@10) (question_index#4) with question_index#1 debug: Deleting Phi assignment: let question_index#4: uint64 = φ(question_index#1 <- block@9, question_index#1 <- block@10) debug: Replaced trivial Phi node: let question_index#4: uint64 = φ(question_index#1 <- block@9, question_index#1 <- block@10) (question_index#4) with question_index#1 in current definition for 1 blocks -debug: Added question_index#1 to Phi node: let question_index#3: uint64 = φ(question_index#1 <- block@7, question_index#1 <- block@11) in block@11: // ternary_merge_L153 +debug: Added question_index#1 to Phi node: let question_index#3: uint64 = Phi(question_index#1 <- block@7, question_index#1 <- block@11) in block@11: // ternary_merge_L153 debug: Replacing trivial Phi node: let question_index#3: uint64 = φ(question_index#1 <- block@7, question_index#1 <- block@11) (question_index#3) with question_index#1 debug: Deleting Phi assignment: let question_index#3: uint64 = φ(question_index#1 <- block@7, question_index#1 <- block@11) debug: Replaced trivial Phi node: let question_index#3: uint64 = φ(question_index#1 <- block@7, question_index#1 <- block@11) (question_index#3) with question_index#1 in current definition for 1 blocks -debug: Added question_index#1 to Phi node: let question_index#2: uint64 = φ(question_index#1 <- block@5, question_index#1 <- block@12) in block@12: // ternary_merge_L151 +debug: Added question_index#1 to Phi node: let question_index#2: uint64 = Phi(question_index#1 <- block@5, question_index#1 <- block@12) in block@12: // ternary_merge_L151 debug: Replacing trivial Phi node: let question_index#2: uint64 = φ(question_index#1 <- block@5, question_index#1 <- block@12) (question_index#2) with question_index#1 debug: Deleting Phi assignment: let question_index#2: uint64 = φ(question_index#1 <- block@5, question_index#1 <- block@12) debug: Replaced trivial Phi node: let question_index#2: uint64 = φ(question_index#1 <- block@5, question_index#1 <- block@12) (question_index#2) with question_index#1 in current definition for 1 blocks -debug: Added question_index#1 to Phi node: let question_index#1: uint64 = φ(question_index#0 <- block@2, question_index#1 <- block@14) in block@14: // for_footer_L146 +debug: Added question_index#1 to Phi node: let question_index#1: uint64 = Phi(question_index#0 <- block@2, question_index#1 <- block@14) in block@14: // for_footer_L146 debug: Replacing trivial Phi node: let question_index#1: uint64 = φ(question_index#0 <- block@2, question_index#1 <- block@14) (question_index#1) with question_index#0 debug: Deleting Phi assignment: let question_index#1: uint64 = φ(question_index#0 <- block@2, question_index#1 <- block@14) debug: Replaced trivial Phi node: let question_index#1: uint64 = φ(question_index#0 <- block@2, question_index#1 <- block@14) (question_index#1) with question_index#0 in current definition for 12 blocks @@ -219,37 +219,37 @@ debug: Terminated block@15: // after_for_L146 debug: Sealing block@16: // for_footer_L144 debug: Sealing block@None: // after_for_L144 debug: Created Phi assignment: let range_item%28#2: uint64 = undefined while trying to resolve 'range_item%28' in block@3: // for_header_L146 -debug: Added range_item%28#1 to Phi node: let range_item%28#2: uint64 = φ(range_item%28#1 <- block@2) in block@2: // for_body_L144 +debug: Added range_item%28#1 to Phi node: let range_item%28#2: uint64 = Phi(range_item%28#1 <- block@2) in block@2: // for_body_L144 debug: Created Phi assignment: let range_item%28#3: uint64 = undefined while trying to resolve 'range_item%28' in block@13: // ternary_merge_L149 -debug: Added range_item%28#2 to Phi node: let range_item%28#3: uint64 = φ(range_item%28#2 <- block@5) in block@5: // ternary_true_L149 +debug: Added range_item%28#2 to Phi node: let range_item%28#3: uint64 = Phi(range_item%28#2 <- block@5) in block@5: // ternary_true_L149 debug: Created Phi assignment: let range_item%28#4: uint64 = undefined while trying to resolve 'range_item%28' in block@12: // ternary_merge_L151 -debug: Added range_item%28#2 to Phi node: let range_item%28#4: uint64 = φ(range_item%28#2 <- block@7) in block@7: // ternary_true_L151 +debug: Added range_item%28#2 to Phi node: let range_item%28#4: uint64 = Phi(range_item%28#2 <- block@7) in block@7: // ternary_true_L151 debug: Created Phi assignment: let range_item%28#5: uint64 = undefined while trying to resolve 'range_item%28' in block@11: // ternary_merge_L153 -debug: Added range_item%28#2 to Phi node: let range_item%28#5: uint64 = φ(range_item%28#2 <- block@9) in block@9: // ternary_true_L153 -debug: Added range_item%28#2 to Phi node: let range_item%28#5: uint64 = φ(range_item%28#2 <- block@9, range_item%28#2 <- block@10) in block@10: // ternary_false_L153 +debug: Added range_item%28#2 to Phi node: let range_item%28#5: uint64 = Phi(range_item%28#2 <- block@9) in block@9: // ternary_true_L153 +debug: Added range_item%28#2 to Phi node: let range_item%28#5: uint64 = Phi(range_item%28#2 <- block@9, range_item%28#2 <- block@10) in block@10: // ternary_false_L153 debug: Replacing trivial Phi node: let range_item%28#5: uint64 = φ(range_item%28#2 <- block@9, range_item%28#2 <- block@10) (range_item%28#5) with range_item%28#2 debug: Deleting Phi assignment: let range_item%28#5: uint64 = φ(range_item%28#2 <- block@9, range_item%28#2 <- block@10) debug: Replaced trivial Phi node: let range_item%28#5: uint64 = φ(range_item%28#2 <- block@9, range_item%28#2 <- block@10) (range_item%28#5) with range_item%28#2 in current definition for 1 blocks -debug: Added range_item%28#2 to Phi node: let range_item%28#4: uint64 = φ(range_item%28#2 <- block@7, range_item%28#2 <- block@11) in block@11: // ternary_merge_L153 +debug: Added range_item%28#2 to Phi node: let range_item%28#4: uint64 = Phi(range_item%28#2 <- block@7, range_item%28#2 <- block@11) in block@11: // ternary_merge_L153 debug: Replacing trivial Phi node: let range_item%28#4: uint64 = φ(range_item%28#2 <- block@7, range_item%28#2 <- block@11) (range_item%28#4) with range_item%28#2 debug: Deleting Phi assignment: let range_item%28#4: uint64 = φ(range_item%28#2 <- block@7, range_item%28#2 <- block@11) debug: Replaced trivial Phi node: let range_item%28#4: uint64 = φ(range_item%28#2 <- block@7, range_item%28#2 <- block@11) (range_item%28#4) with range_item%28#2 in current definition for 1 blocks -debug: Added range_item%28#2 to Phi node: let range_item%28#3: uint64 = φ(range_item%28#2 <- block@5, range_item%28#2 <- block@12) in block@12: // ternary_merge_L151 +debug: Added range_item%28#2 to Phi node: let range_item%28#3: uint64 = Phi(range_item%28#2 <- block@5, range_item%28#2 <- block@12) in block@12: // ternary_merge_L151 debug: Replacing trivial Phi node: let range_item%28#3: uint64 = φ(range_item%28#2 <- block@5, range_item%28#2 <- block@12) (range_item%28#3) with range_item%28#2 debug: Deleting Phi assignment: let range_item%28#3: uint64 = φ(range_item%28#2 <- block@5, range_item%28#2 <- block@12) debug: Replaced trivial Phi node: let range_item%28#3: uint64 = φ(range_item%28#2 <- block@5, range_item%28#2 <- block@12) (range_item%28#3) with range_item%28#2 in current definition for 1 blocks -debug: Added range_item%28#2 to Phi node: let range_item%28#2: uint64 = φ(range_item%28#1 <- block@2, range_item%28#2 <- block@14) in block@14: // for_footer_L146 +debug: Added range_item%28#2 to Phi node: let range_item%28#2: uint64 = Phi(range_item%28#1 <- block@2, range_item%28#2 <- block@14) in block@14: // for_footer_L146 debug: Replacing trivial Phi node: let range_item%28#2: uint64 = φ(range_item%28#1 <- block@2, range_item%28#2 <- block@14) (range_item%28#2) with range_item%28#1 debug: Deleting Phi assignment: let range_item%28#2: uint64 = φ(range_item%28#1 <- block@2, range_item%28#2 <- block@14) debug: Replaced trivial Phi node: let range_item%28#2: uint64 = φ(range_item%28#1 <- block@2, range_item%28#2 <- block@14) (range_item%28#2) with range_item%28#1 in current definition for 12 blocks debug: Terminated block@16: // for_footer_L144 debug: Sealing block@1: // for_header_L144 -debug: Added range_item%28#0 to Phi node: let range_item%28#1: uint64 = φ(range_item%28#0 <- block@0) in block@0: // L123 -debug: Added range_item%28#6 to Phi node: let range_item%28#1: uint64 = φ(range_item%28#0 <- block@0, range_item%28#6 <- block@16) in block@16: // for_footer_L144 -debug: Added current_index#0 to Phi node: let current_index#6: uint64 = φ(current_index#0 <- block@0) in block@0: // L123 -debug: Added current_index#1 to Phi node: let current_index#6: uint64 = φ(current_index#0 <- block@0, current_index#1 <- block@16) in block@16: // for_footer_L144 -debug: Added note#0 to Phi node: let note#3: bytes = φ(note#0 <- block@0) in block@0: // L123 -debug: Added note#1 to Phi node: let note#3: bytes = φ(note#0 <- block@0, note#1 <- block@16) in block@16: // for_footer_L144 +debug: Added range_item%28#0 to Phi node: let range_item%28#1: uint64 = Phi(range_item%28#0 <- block@0) in block@0: // L123 +debug: Added range_item%28#6 to Phi node: let range_item%28#1: uint64 = Phi(range_item%28#0 <- block@0, range_item%28#6 <- block@16) in block@16: // for_footer_L144 +debug: Added current_index#0 to Phi node: let current_index#6: uint64 = Phi(current_index#0 <- block@0) in block@0: // L123 +debug: Added current_index#1 to Phi node: let current_index#6: uint64 = Phi(current_index#0 <- block@0, current_index#1 <- block@16) in block@16: // for_footer_L144 +debug: Added note#0 to Phi node: let note#3: bytes = Phi(note#0 <- block@0) in block@0: // L123 +debug: Added note#1 to Phi node: let note#3: bytes = Phi(note#0 <- block@0, note#1 <- block@16) in block@16: // for_footer_L144 debug: Terminated block@17: // after_for_L144 debug: Sealing block@0: // L14 debug: Terminated block@0: // L14 @@ -269,27 +269,27 @@ debug: Terminated block@5: // switch_case_default_L27 debug: Sealing block@6: // switch_case_next_L27 debug: Terminated block@6: // switch_case_next_L27 debug: Sealing block@1: // while_top_L21 -debug: Added required_budget_with_buffer#0 to Phi node: let required_budget_with_buffer#1: uint64 = φ(required_budget_with_buffer#0 <- block@0) in block@0: // L14 +debug: Added required_budget_with_buffer#0 to Phi node: let required_budget_with_buffer#1: uint64 = Phi(required_budget_with_buffer#0 <- block@0) in block@0: // L14 debug: Created Phi assignment: let required_budget_with_buffer#2: uint64 = undefined while trying to resolve 'required_budget_with_buffer' in block@6: // switch_case_next_L27 -debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#2: uint64 = φ(required_budget_with_buffer#1 <- block@3) in block@3: // switch_case_0_L29 -debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#2: uint64 = φ(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4) in block@4: // switch_case_1_L31 -debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#2: uint64 = φ(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4, required_budget_with_buffer#1 <- block@5) in block@5: // switch_case_default_L27 +debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#2: uint64 = Phi(required_budget_with_buffer#1 <- block@3) in block@3: // switch_case_0_L29 +debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#2: uint64 = Phi(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4) in block@4: // switch_case_1_L31 +debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#2: uint64 = Phi(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4, required_budget_with_buffer#1 <- block@5) in block@5: // switch_case_default_L27 debug: Replacing trivial Phi node: let required_budget_with_buffer#2: uint64 = φ(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4, required_budget_with_buffer#1 <- block@5) (required_budget_with_buffer#2) with required_budget_with_buffer#1 debug: Deleting Phi assignment: let required_budget_with_buffer#2: uint64 = φ(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4, required_budget_with_buffer#1 <- block@5) debug: Replaced trivial Phi node: let required_budget_with_buffer#2: uint64 = φ(required_budget_with_buffer#1 <- block@3, required_budget_with_buffer#1 <- block@4, required_budget_with_buffer#1 <- block@5) (required_budget_with_buffer#2) with required_budget_with_buffer#1 in current definition for 1 blocks -debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#1: uint64 = φ(required_budget_with_buffer#0 <- block@0, required_budget_with_buffer#1 <- block@6) in block@6: // switch_case_next_L27 +debug: Added required_budget_with_buffer#1 to Phi node: let required_budget_with_buffer#1: uint64 = Phi(required_budget_with_buffer#0 <- block@0, required_budget_with_buffer#1 <- block@6) in block@6: // switch_case_next_L27 debug: Replacing trivial Phi node: let required_budget_with_buffer#1: uint64 = φ(required_budget_with_buffer#0 <- block@0, required_budget_with_buffer#1 <- block@6) (required_budget_with_buffer#1) with required_budget_with_buffer#0 debug: Deleting Phi assignment: let required_budget_with_buffer#1: uint64 = φ(required_budget_with_buffer#0 <- block@0, required_budget_with_buffer#1 <- block@6) debug: Replaced trivial Phi node: let required_budget_with_buffer#1: uint64 = φ(required_budget_with_buffer#0 <- block@0, required_budget_with_buffer#1 <- block@6) (required_budget_with_buffer#1) with required_budget_with_buffer#0 in current definition for 6 blocks -debug: Added fee_source#0 to Phi node: let fee_source#1: uint64 = φ(fee_source#0 <- block@0) in block@0: // L14 +debug: Added fee_source#0 to Phi node: let fee_source#1: uint64 = Phi(fee_source#0 <- block@0) in block@0: // L14 debug: Created Phi assignment: let fee_source#2: uint64 = undefined while trying to resolve 'fee_source' in block@6: // switch_case_next_L27 -debug: Added fee_source#1 to Phi node: let fee_source#2: uint64 = φ(fee_source#1 <- block@3) in block@3: // switch_case_0_L29 -debug: Added fee_source#1 to Phi node: let fee_source#2: uint64 = φ(fee_source#1 <- block@3, fee_source#1 <- block@4) in block@4: // switch_case_1_L31 -debug: Added fee_source#1 to Phi node: let fee_source#2: uint64 = φ(fee_source#1 <- block@3, fee_source#1 <- block@4, fee_source#1 <- block@5) in block@5: // switch_case_default_L27 +debug: Added fee_source#1 to Phi node: let fee_source#2: uint64 = Phi(fee_source#1 <- block@3) in block@3: // switch_case_0_L29 +debug: Added fee_source#1 to Phi node: let fee_source#2: uint64 = Phi(fee_source#1 <- block@3, fee_source#1 <- block@4) in block@4: // switch_case_1_L31 +debug: Added fee_source#1 to Phi node: let fee_source#2: uint64 = Phi(fee_source#1 <- block@3, fee_source#1 <- block@4, fee_source#1 <- block@5) in block@5: // switch_case_default_L27 debug: Replacing trivial Phi node: let fee_source#2: uint64 = φ(fee_source#1 <- block@3, fee_source#1 <- block@4, fee_source#1 <- block@5) (fee_source#2) with fee_source#1 debug: Deleting Phi assignment: let fee_source#2: uint64 = φ(fee_source#1 <- block@3, fee_source#1 <- block@4, fee_source#1 <- block@5) debug: Replaced trivial Phi node: let fee_source#2: uint64 = φ(fee_source#1 <- block@3, fee_source#1 <- block@4, fee_source#1 <- block@5) (fee_source#2) with fee_source#1 in current definition for 1 blocks -debug: Added fee_source#1 to Phi node: let fee_source#1: uint64 = φ(fee_source#0 <- block@0, fee_source#1 <- block@6) in block@6: // switch_case_next_L27 +debug: Added fee_source#1 to Phi node: let fee_source#1: uint64 = Phi(fee_source#0 <- block@0, fee_source#1 <- block@6) in block@6: // switch_case_next_L27 debug: Replacing trivial Phi node: let fee_source#1: uint64 = φ(fee_source#0 <- block@0, fee_source#1 <- block@6) (fee_source#1) with fee_source#0 debug: Deleting Phi assignment: let fee_source#1: uint64 = φ(fee_source#0 <- block@0, fee_source#1 <- block@6) debug: Replaced trivial Phi node: let fee_source#1: uint64 = φ(fee_source#0 <- block@0, fee_source#1 <- block@6) (fee_source#1) with fee_source#0 in current definition for 6 blocks @@ -305,8 +305,8 @@ debug: Terminated block@1: // ternary_true_L175 debug: Terminated block@2: // ternary_false_L175 debug: Sealing block@3: // ternary_merge_L175 debug: Created Phi assignment: let ternary_result%4#2: uint64 = undefined while trying to resolve 'ternary_result%4' in block@3: // ternary_merge_L175 -debug: Added ternary_result%4#0 to Phi node: let ternary_result%4#2: uint64 = φ(ternary_result%4#0 <- block@1) in block@1: // ternary_true_L175 -debug: Added ternary_result%4#1 to Phi node: let ternary_result%4#2: uint64 = φ(ternary_result%4#0 <- block@1, ternary_result%4#1 <- block@2) in block@2: // ternary_false_L175 +debug: Added ternary_result%4#0 to Phi node: let ternary_result%4#2: uint64 = Phi(ternary_result%4#0 <- block@1) in block@1: // ternary_true_L175 +debug: Added ternary_result%4#1 to Phi node: let ternary_result%4#2: uint64 = Phi(ternary_result%4#0 <- block@1, ternary_result%4#1 <- block@2) in block@2: // ternary_false_L175 debug: Terminated block@3: // ternary_merge_L175 debug: Sealing block@0: // L220 debug: Terminated block@0: // L220 @@ -322,8 +322,8 @@ debug: Terminated block@4: // bool_true_L222 debug: Terminated block@5: // bool_false_L222 debug: Sealing block@6: // bool_merge_L222 debug: Created Phi assignment: let and_result%11#2: uint64 = undefined while trying to resolve 'and_result%11' in block@6: // bool_merge_L222 -debug: Added and_result%11#0 to Phi node: let and_result%11#2: uint64 = φ(and_result%11#0 <- block@4) in block@4: // bool_true_L222 -debug: Added and_result%11#1 to Phi node: let and_result%11#2: uint64 = φ(and_result%11#0 <- block@4, and_result%11#1 <- block@5) in block@5: // bool_false_L222 +debug: Added and_result%11#0 to Phi node: let and_result%11#2: uint64 = Phi(and_result%11#0 <- block@4) in block@4: // bool_true_L222 +debug: Added and_result%11#1 to Phi node: let and_result%11#2: uint64 = Phi(and_result%11#0 <- block@4, and_result%11#1 <- block@5) in block@5: // bool_false_L222 debug: Terminated block@6: // bool_merge_L222 debug: Sealing block@0: // L253 debug: Terminated block@0: // L253 @@ -337,17 +337,17 @@ debug: Terminated block@1: // ternary_true_L190 debug: Terminated block@2: // ternary_false_L190 debug: Sealing block@3: // ternary_merge_L190 debug: Created Phi assignment: let ternary_result%2#2: uint64 = undefined while trying to resolve 'ternary_result%2' in block@3: // ternary_merge_L190 -debug: Added ternary_result%2#0 to Phi node: let ternary_result%2#2: uint64 = φ(ternary_result%2#0 <- block@1) in block@1: // ternary_true_L190 -debug: Added ternary_result%2#1 to Phi node: let ternary_result%2#2: uint64 = φ(ternary_result%2#0 <- block@1, ternary_result%2#1 <- block@2) in block@2: // ternary_false_L190 +debug: Added ternary_result%2#0 to Phi node: let ternary_result%2#2: uint64 = Phi(ternary_result%2#0 <- block@1) in block@1: // ternary_true_L190 +debug: Added ternary_result%2#1 to Phi node: let ternary_result%2#2: uint64 = Phi(ternary_result%2#0 <- block@1, ternary_result%2#1 <- block@2) in block@2: // ternary_false_L190 debug: Created Phi assignment: let answer_ids#1: bytes = undefined while trying to resolve 'answer_ids' in block@3: // ternary_merge_L190 -debug: Added answer_ids#0 to Phi node: let answer_ids#1: bytes = φ(answer_ids#0 <- block@1) in block@1: // ternary_true_L190 -debug: Added answer_ids#0 to Phi node: let answer_ids#1: bytes = φ(answer_ids#0 <- block@1, answer_ids#0 <- block@2) in block@2: // ternary_false_L190 +debug: Added answer_ids#0 to Phi node: let answer_ids#1: bytes = Phi(answer_ids#0 <- block@1) in block@1: // ternary_true_L190 +debug: Added answer_ids#0 to Phi node: let answer_ids#1: bytes = Phi(answer_ids#0 <- block@1, answer_ids#0 <- block@2) in block@2: // ternary_false_L190 debug: Replacing trivial Phi node: let answer_ids#1: bytes = φ(answer_ids#0 <- block@1, answer_ids#0 <- block@2) (answer_ids#1) with answer_ids#0 debug: Deleting Phi assignment: let answer_ids#1: bytes = φ(answer_ids#0 <- block@1, answer_ids#0 <- block@2) debug: Replaced trivial Phi node: let answer_ids#1: bytes = φ(answer_ids#0 <- block@1, answer_ids#0 <- block@2) (answer_ids#1) with answer_ids#0 in current definition for 1 blocks debug: Created Phi assignment: let fund_min_bal_req#1: uint64 = undefined while trying to resolve 'fund_min_bal_req' in block@3: // ternary_merge_L190 -debug: Added fund_min_bal_req#0 to Phi node: let fund_min_bal_req#1: uint64 = φ(fund_min_bal_req#0 <- block@1) in block@1: // ternary_true_L190 -debug: Added fund_min_bal_req#0 to Phi node: let fund_min_bal_req#1: uint64 = φ(fund_min_bal_req#0 <- block@1, fund_min_bal_req#0 <- block@2) in block@2: // ternary_false_L190 +debug: Added fund_min_bal_req#0 to Phi node: let fund_min_bal_req#1: uint64 = Phi(fund_min_bal_req#0 <- block@1) in block@1: // ternary_true_L190 +debug: Added fund_min_bal_req#0 to Phi node: let fund_min_bal_req#1: uint64 = Phi(fund_min_bal_req#0 <- block@1, fund_min_bal_req#0 <- block@2) in block@2: // ternary_false_L190 debug: Replacing trivial Phi node: let fund_min_bal_req#1: uint64 = φ(fund_min_bal_req#0 <- block@1, fund_min_bal_req#0 <- block@2) (fund_min_bal_req#1) with fund_min_bal_req#0 debug: Deleting Phi assignment: let fund_min_bal_req#1: uint64 = φ(fund_min_bal_req#0 <- block@1, fund_min_bal_req#0 <- block@2) debug: Replaced trivial Phi node: let fund_min_bal_req#1: uint64 = φ(fund_min_bal_req#0 <- block@1, fund_min_bal_req#0 <- block@2) (fund_min_bal_req#1) with fund_min_bal_req#0 in current definition for 1 blocks @@ -365,15 +365,15 @@ debug: Sealing block@6: // for_footer_L207 debug: Sealing block@None: // after_for_L207 debug: Terminated block@6: // for_footer_L207 debug: Sealing block@4: // for_header_L207 -debug: Added range_item%23#0 to Phi node: let range_item%23#1: uint64 = φ(range_item%23#0 <- block@3) in block@3: // ternary_merge_L190 -debug: Added range_item%23#2 to Phi node: let range_item%23#1: uint64 = φ(range_item%23#0 <- block@3, range_item%23#2 <- block@6) in block@6: // for_footer_L207 -debug: Added answer_ids#0 to Phi node: let answer_ids#2: bytes = φ(answer_ids#0 <- block@3) in block@3: // ternary_merge_L190 -debug: Added answer_ids#2 to Phi node: let answer_ids#2: bytes = φ(answer_ids#0 <- block@3, answer_ids#2 <- block@6) in block@6: // for_footer_L207 +debug: Added range_item%23#0 to Phi node: let range_item%23#1: uint64 = Phi(range_item%23#0 <- block@3) in block@3: // ternary_merge_L190 +debug: Added range_item%23#2 to Phi node: let range_item%23#1: uint64 = Phi(range_item%23#0 <- block@3, range_item%23#2 <- block@6) in block@6: // for_footer_L207 +debug: Added answer_ids#0 to Phi node: let answer_ids#2: bytes = Phi(answer_ids#0 <- block@3) in block@3: // ternary_merge_L190 +debug: Added answer_ids#2 to Phi node: let answer_ids#2: bytes = Phi(answer_ids#0 <- block@3, answer_ids#2 <- block@6) in block@6: // for_footer_L207 debug: Replacing trivial Phi node: let answer_ids#2: bytes = φ(answer_ids#0 <- block@3, answer_ids#2 <- block@6) (answer_ids#2) with answer_ids#0 debug: Deleting Phi assignment: let answer_ids#2: bytes = φ(answer_ids#0 <- block@3, answer_ids#2 <- block@6) debug: Replaced trivial Phi node: let answer_ids#2: bytes = φ(answer_ids#0 <- block@3, answer_ids#2 <- block@6) (answer_ids#2) with answer_ids#0 in current definition for 3 blocks -debug: Added cumulative_offset#0 to Phi node: let cumulative_offset#1: uint64 = φ(cumulative_offset#0 <- block@3) in block@3: // ternary_merge_L190 -debug: Added cumulative_offset#2 to Phi node: let cumulative_offset#1: uint64 = φ(cumulative_offset#0 <- block@3, cumulative_offset#2 <- block@6) in block@6: // for_footer_L207 +debug: Added cumulative_offset#0 to Phi node: let cumulative_offset#1: uint64 = Phi(cumulative_offset#0 <- block@3) in block@3: // ternary_merge_L190 +debug: Added cumulative_offset#2 to Phi node: let cumulative_offset#1: uint64 = Phi(cumulative_offset#0 <- block@3, cumulative_offset#2 <- block@6) in block@6: // for_footer_L207 debug: Terminated block@7: // after_for_L207 debug: Sealing block@0: // L270 debug: Terminated block@0: // L270 diff --git a/examples/with_reentrancy/puya.log b/examples/with_reentrancy/puya.log index e8899c0b9a..933996288f 100644 --- a/examples/with_reentrancy/puya.log +++ b/examples/with_reentrancy/puya.log @@ -23,8 +23,8 @@ debug: Terminated block@1: // if_body_L52 debug: Terminated block@2: // else_body_L52 debug: Sealing block@3: // after_if_else_L52 debug: Created Phi assignment: let is_even#1: uint64 = undefined while trying to resolve 'is_even' in block@3: // after_if_else_L52 -debug: Added is_even#0 to Phi node: let is_even#1: uint64 = φ(is_even#0 <- block@1) in block@1: // if_body_L52 -debug: Added is_even#0 to Phi node: let is_even#1: uint64 = φ(is_even#0 <- block@1, is_even#0 <- block@2) in block@2: // else_body_L52 +debug: Added is_even#0 to Phi node: let is_even#1: uint64 = Phi(is_even#0 <- block@1) in block@1: // if_body_L52 +debug: Added is_even#0 to Phi node: let is_even#1: uint64 = Phi(is_even#0 <- block@1, is_even#0 <- block@2) in block@2: // else_body_L52 debug: Replacing trivial Phi node: let is_even#1: uint64 = φ(is_even#0 <- block@1, is_even#0 <- block@2) (is_even#1) with is_even#0 debug: Deleting Phi assignment: let is_even#1: uint64 = φ(is_even#0 <- block@1, is_even#0 <- block@2) debug: Replaced trivial Phi node: let is_even#1: uint64 = φ(is_even#0 <- block@1, is_even#0 <- block@2) (is_even#1) with is_even#0 in current definition for 1 blocks @@ -32,28 +32,28 @@ debug: Terminated block@3: // after_if_else_L52 debug: Sealing block@None: // if_body_L58 debug: Sealing block@None: // else_body_L58 debug: Created Phi assignment: let a#2: uint64 = undefined while trying to resolve 'a' in block@3: // after_if_else_L52 -debug: Added a#1 to Phi node: let a#2: uint64 = φ(a#1 <- block@1) in block@1: // if_body_L52 -debug: Added a#0 to Phi node: let a#2: uint64 = φ(a#1 <- block@1, a#0 <- block@2) in block@2: // else_body_L52 +debug: Added a#1 to Phi node: let a#2: uint64 = Phi(a#1 <- block@1) in block@1: // if_body_L52 +debug: Added a#0 to Phi node: let a#2: uint64 = Phi(a#1 <- block@1, a#0 <- block@2) in block@2: // else_body_L52 debug: Terminated block@4: // if_body_L58 debug: Sealing block@5: // after_if_else_L58 debug: Created Phi assignment: let x#1: uint64 = undefined while trying to resolve 'x' in block@5: // after_if_else_L58 debug: Created Phi assignment: let x#2: uint64 = undefined while trying to resolve 'x' in block@3: // after_if_else_L52 -debug: Added x#0 to Phi node: let x#2: uint64 = φ(x#0 <- block@1) in block@1: // if_body_L52 -debug: Added x#0 to Phi node: let x#2: uint64 = φ(x#0 <- block@1, x#0 <- block@2) in block@2: // else_body_L52 +debug: Added x#0 to Phi node: let x#2: uint64 = Phi(x#0 <- block@1) in block@1: // if_body_L52 +debug: Added x#0 to Phi node: let x#2: uint64 = Phi(x#0 <- block@1, x#0 <- block@2) in block@2: // else_body_L52 debug: Replacing trivial Phi node: let x#2: uint64 = φ(x#0 <- block@1, x#0 <- block@2) (x#2) with x#0 debug: Deleting Phi assignment: let x#2: uint64 = φ(x#0 <- block@1, x#0 <- block@2) debug: Replaced trivial Phi node: let x#2: uint64 = φ(x#0 <- block@1, x#0 <- block@2) (x#2) with x#0 in current definition for 1 blocks -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@3) in block@3: // after_if_else_L52 -debug: Added x#0 to Phi node: let x#1: uint64 = φ(x#0 <- block@3, x#0 <- block@4) in block@4: // if_body_L58 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@3) in block@3: // after_if_else_L52 +debug: Added x#0 to Phi node: let x#1: uint64 = Phi(x#0 <- block@3, x#0 <- block@4) in block@4: // if_body_L58 debug: Replacing trivial Phi node: let x#1: uint64 = φ(x#0 <- block@3, x#0 <- block@4) (x#1) with x#0 debug: Deleting Phi assignment: let x#1: uint64 = φ(x#0 <- block@3, x#0 <- block@4) debug: Replaced trivial Phi node: let x#1: uint64 = φ(x#0 <- block@3, x#0 <- block@4) (x#1) with x#0 in current definition for 1 blocks debug: Created Phi assignment: let result#3: uint64 = undefined while trying to resolve 'result' in block@5: // after_if_else_L58 debug: Created Phi assignment: let result#4: uint64 = undefined while trying to resolve 'result' in block@3: // after_if_else_L52 -debug: Added result#0 to Phi node: let result#4: uint64 = φ(result#0 <- block@1) in block@1: // if_body_L52 -debug: Added result#1 to Phi node: let result#4: uint64 = φ(result#0 <- block@1, result#1 <- block@2) in block@2: // else_body_L52 -debug: Added result#4 to Phi node: let result#3: uint64 = φ(result#4 <- block@3) in block@3: // after_if_else_L52 -debug: Added result#2 to Phi node: let result#3: uint64 = φ(result#4 <- block@3, result#2 <- block@4) in block@4: // if_body_L58 +debug: Added result#0 to Phi node: let result#4: uint64 = Phi(result#0 <- block@1) in block@1: // if_body_L52 +debug: Added result#1 to Phi node: let result#4: uint64 = Phi(result#0 <- block@1, result#1 <- block@2) in block@2: // else_body_L52 +debug: Added result#4 to Phi node: let result#3: uint64 = Phi(result#4 <- block@3) in block@3: // after_if_else_L52 +debug: Added result#2 to Phi node: let result#3: uint64 = Phi(result#4 <- block@3, result#2 <- block@4) in block@4: // if_body_L58 debug: Terminated block@5: // after_if_else_L58 debug: Sealing block@0: // L17 debug: Terminated block@0: // L17 diff --git a/src/wyvern/ir/ssa.py b/src/wyvern/ir/ssa.py index 4658e85d93..5ae0701c1c 100644 --- a/src/wyvern/ir/ssa.py +++ b/src/wyvern/ir/ssa.py @@ -124,7 +124,9 @@ def _add_phi_operands(self, phi: ir.Phi, block: ir.BasicBlock) -> ir.Register: through=block_pred, ) ) - logger.debug(f"Added {pred_variable} to Phi node: {phi} in {block_pred}") + # temporary work around for windows default code page not handling φ + phi_str = str(phi).replace("φ", "Phi") + logger.debug(f"Added {pred_variable} to Phi node: {phi_str} in {block_pred}") attrs.validate(phi) trivial_replacements = TrivialPhiRemover.try_remove(phi, self._all_blocks) if not trivial_replacements: