Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename: /in/OVVIA
function name: (null)
number of ops: 38
compiled vars: !0 = $sourceArray, !1 = $sourceArray2, !2 = $expect, !3 = $expect2, !4 = $res, !5 = $res2
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
2 0 E > ASSIGN !0, <array>
13 1 ASSIGN !1, <array>
31 2 ASSIGN !2, <array>
86 3 ASSIGN !3, <array>
244 4 INIT_FCALL 'maketreeiter'
5 SEND_VAR !0
6 DO_FCALL 0 $10
7 ASSIGN !4, $10
245 8 INIT_FCALL 'maketreeiter'
9 SEND_VAR !1
10 DO_FCALL 0 $12
11 ASSIGN !5, $12
247 12 INIT_FCALL_BY_NAME 'test'
13 SEND_VAR_EX !4
14 SEND_VAR_EX !2
15 DO_FCALL 0
16 ECHO '%0A'
248 17 INIT_FCALL_BY_NAME 'test'
18 SEND_VAR_EX !5
19 SEND_VAR_EX !3
20 DO_FCALL 0
21 ECHO '%0A'
250 22 INIT_FCALL_BY_NAME 'mijikaiDump'
23 SEND_VAR_EX !4
24 DO_FCALL 0
25 ECHO '%0A'
251 26 INIT_FCALL_BY_NAME 'mijikaiDump'
27 SEND_VAR_EX !5
28 DO_FCALL 0
29 ECHO '%0A'
253 30 INIT_FCALL 'var_dump'
31 SEND_VAR !4
32 DO_ICALL
33 ECHO '%0A%0A%0A%0A%0A'
254 34 INIT_FCALL 'var_dump'
35 SEND_VAR !5
36 DO_ICALL
274 37 > RETURN 1
Function maketreeiter:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 4, Position 2 = 37
Branch analysis from position: 4
2 jumps found. (Code = 78) Position 1 = 5, Position 2 = 37
Branch analysis from position: 5
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 27
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 36
Branch analysis from position: 36
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 27
1 jumps found. (Code = 42) Position 1 = 4
Branch analysis from position: 4
Branch analysis from position: 37
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 37
filename: /in/OVVIA
function name: makeTreeIter
number of ops: 40
compiled vars: !0 = $arr, !1 = $parents, !2 = $res, !3 = $sub, !4 = $index, !5 = $lvl, !6 = $i, !7 = $lastIndex, !8 = $ref
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
220 0 E > RECV !0
221 1 ASSIGN !1, <array>
222 2 ASSIGN !2, <array>
224 3 > FE_RESET_R $11 !0, ->37
4 > > FE_FETCH_R ~12 $11, !3, ->37
5 > ASSIGN !4, ~12
225 6 FETCH_DIM_R ~14 !3, 'DEPTH_LEVEL'
7 ASSIGN !5, ~14
227 8 SUB ~16 !5, 1
9 ISSET_ISEMPTY_DIM_OBJ 0 !1, ~16
10 > JMPZ ~17, ->27
228 11 > SUB ~18 !5, 1
12 FETCH_DIM_W $19 !1, ~18
13 ASSIGN_REF !6, $19
229 14 FETCH_DIM_W $21 !6, 'CHILD'
15 ASSIGN_DIM $21
16 OP_DATA !3
230 17 FETCH_DIM_R ~23 !6, 'CHILD'
18 COUNT ~24 ~23
19 SUB ~25 ~24, 1
20 ASSIGN !7, ~25
231 21 FETCH_DIM_W $27 !6, 'CHILD'
22 FETCH_DIM_W $28 $27, !7
23 ASSIGN_REF !8, $28
232 24 FETCH_DIM_W $30 !1, !5
25 ASSIGN_REF $30, !8
227 26 > JMP ->36
234 27 > ASSIGN_DIM !2
28 OP_DATA !3
235 29 COUNT ~33 !2
30 SUB ~34 ~33, 1
31 ASSIGN !7, ~34
236 32 FETCH_DIM_W $36 !2, !7
33 ASSIGN_REF !8, $36
237 34 FETCH_DIM_W $38 !1, !5
35 ASSIGN_REF $38, !8
224 36 > > JMP ->4
37 > FE_FREE $11
240 38 > RETURN !2
241 39* > RETURN null
End of function maketreeiter
Function test:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 4, Position 2 = 6
Branch analysis from position: 4
1 jumps found. (Code = 42) Position 1 = 10
Branch analysis from position: 10
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 6
1 jumps found. (Code = 108) Position 1 = -2
filename: /in/OVVIA
function name: test
number of ops: 11
compiled vars: !0 = $res, !1 = $expect
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
259 0 E > RECV !0
1 RECV !1
260 2 IS_IDENTICAL !0, !1
3 > JMPZ ~2, ->6
261 4 > ECHO 'OK%3A+resuling+and+expected+arrays+match.'
260 5 > JMP ->10
263 6 > NEW $3 'Exception'
7 SEND_VAL_EX 'KO%3A+resulting+and+expected+arrays+don%27t+match.'
8 DO_FCALL 0
9 > THROW 0 $3
265 10 > > RETURN null
End of function test
Function mijikaidump:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 3, Position 2 = 21
Branch analysis from position: 3
2 jumps found. (Code = 78) Position 1 = 4, Position 2 = 21
Branch analysis from position: 4
2 jumps found. (Code = 43) Position 1 = 13, Position 2 = 20
Branch analysis from position: 13
1 jumps found. (Code = 42) Position 1 = 3
Branch analysis from position: 3
Branch analysis from position: 20
Branch analysis from position: 21
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 21
filename: /in/OVVIA
function name: mijikaiDump
number of ops: 23
compiled vars: !0 = $arr, !1 = $tab, !2 = $val
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
267 0 E > RECV !0
1 RECV_INIT !1 ''
268 2 > FE_RESET_R $3 !0, ->21
3 > > FE_FETCH_R $3, !2, ->21
269 4 > FETCH_DIM_R ~4 !2, 'DEPTH_LEVEL'
5 CONCAT ~5 !1, ~4
6 CONCAT ~6 ~5, '+'
7 FETCH_DIM_R ~7 !2, 'NAME'
8 CONCAT ~8 ~6, ~7
9 CONCAT ~9 ~8, '%0A'
10 ECHO ~9
270 11 ISSET_ISEMPTY_DIM_OBJ 0 !2, 'CHILD'
12 > JMPZ ~10, ->20
271 13 > INIT_FCALL_BY_NAME 'mijikaiDump'
14 CHECK_FUNC_ARG
15 FETCH_DIM_FUNC_ARG $11 !2, 'CHILD'
16 SEND_FUNC_ARG $11
17 CONCAT ~12 !1, '+++'
18 SEND_VAL_EX ~12
19 DO_FCALL 0
268 20 > > JMP ->3
21 > FE_FREE $3
274 22 > RETURN null
End of function mijikaidump
Generated using Vulcan Logic Dumper, using php 8.0.0