Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/dePL9
function name: (null)
number of ops: 13
compiled vars: !0 = $array, !1 = $soughtKeys
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
3 0 E > ASSIGN !0, <array>
23 1 INIT_FCALL 'array_flip'
2 SEND_VAL <array>
3 DO_ICALL $3
4 ASSIGN !1, $3
38 5 INIT_FCALL 'var_export'
6 INIT_FCALL 'earlyreturningrecursion'
7 SEND_VAR !0
8 SEND_VAR !1
9 DO_FCALL 0 $5
10 SEND_VAR $5
11 DO_ICALL
12 > RETURN 1
Function earlyreturningrecursion:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 4, Position 2 = 39
Branch analysis from position: 4
2 jumps found. (Code = 78) Position 1 = 5, Position 2 = 39
Branch analysis from position: 5
2 jumps found. (Code = 43) Position 1 = 12, Position 2 = 16
Branch analysis from position: 12
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 16
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 24
Branch analysis from position: 18
1 jumps found. (Code = 42) Position 1 = 38
Branch analysis from position: 38
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 24
2 jumps found. (Code = 46) Position 1 = 26, Position 2 = 32
Branch analysis from position: 26
2 jumps found. (Code = 43) Position 1 = 33, Position 2 = 38
Branch analysis from position: 33
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 38
Branch analysis from position: 32
Branch analysis from position: 39
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 39
filename: /in/dePL9
function name: earlyReturningRecursion
number of ops: 44
compiled vars: !0 = $array, !1 = $soughtKeys, !2 = $result, !3 = $value, !4 = $key
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
25 0 E > RECV !0
1 RECV !1
2 RECV_INIT !2 <array>
27 3 > FE_RESET_R $5 !0, ->39
4 > > FE_FETCH_R ~6 $5, !3, ->39
5 > ASSIGN !4, ~6
28 6 INIT_FCALL 'array_diff_key'
7 SEND_VAR !1
8 SEND_VAR !2
9 DO_ICALL $8
10 BOOL_NOT ~9 $8
11 > JMPZ ~9, ->16
29 12 > VERIFY_RETURN_TYPE !2
13 FE_FREE $5
14 > RETURN !2
28 15* JMP ->38
30 16 > TYPE_CHECK 128 !3
17 > JMPZ ~10, ->24
31 18 > INIT_FCALL_BY_NAME 'earlyReturningRecursion'
19 SEND_VAR_EX !3
20 SEND_VAR_EX !1
21 SEND_VAR_EX !2
22 DO_FCALL 0
30 23 > JMP ->38
32 24 > ISSET_ISEMPTY_DIM_OBJ 0 ~12 !1, !4
25 > JMPZ_EX ~12 ~12, ->32
26 > INIT_FCALL 'key_exists'
27 SEND_VAR !4
28 SEND_VAR !2
29 DO_ICALL $13
30 BOOL_NOT ~14 $13
31 BOOL ~12 ~14
32 > > JMPZ ~12, ->38
33 33 > ROPE_INIT 3 ~17 !4
34 ROPE_ADD 1 ~17 ~17, '+is+'
35 ROPE_END 2 ~16 ~17, !3
36 ASSIGN_DIM !2, !4
37 OP_DATA ~16
27 38 > > JMP ->4
39 > FE_FREE $5
36 40 VERIFY_RETURN_TYPE !2
41 > RETURN !2
37 42* VERIFY_RETURN_TYPE
43* > RETURN null
End of function earlyreturningrecursion
Generated using Vulcan Logic Dumper, using php 8.0.0