Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 77) Position 1 = 44, Position 2 = 80
Branch analysis from position: 44
2 jumps found. (Code = 78) Position 1 = 45, Position 2 = 80
Branch analysis from position: 45
2 jumps found. (Code = 43) Position 1 = 56, Position 2 = 58
Branch analysis from position: 56
1 jumps found. (Code = 42) Position 1 = 59
Branch analysis from position: 59
2 jumps found. (Code = 43) Position 1 = 62, Position 2 = 64
Branch analysis from position: 62
1 jumps found. (Code = 42) Position 1 = 65
Branch analysis from position: 65
2 jumps found. (Code = 43) Position 1 = 78, Position 2 = 79
Branch analysis from position: 78
1 jumps found. (Code = 42) Position 1 = 44
Branch analysis from position: 44
Branch analysis from position: 79
Branch analysis from position: 64
2 jumps found. (Code = 43) Position 1 = 78, Position 2 = 79
Branch analysis from position: 78
Branch analysis from position: 79
Branch analysis from position: 58
2 jumps found. (Code = 43) Position 1 = 62, Position 2 = 64
Branch analysis from position: 62
Branch analysis from position: 64
Branch analysis from position: 80
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 80
filename: /in/sGEe2
function name: (null)
number of ops: 90
compiled vars: !0 = $utcUnixTimestamp, !1 = $checks, !2 = $total, !3 = $failed, !4 = $check, !5 = $label, !6 = $initTimezone, !7 = $constructor, !8 = $setTimestamp, !9 = $expected, !10 = $expectedOffset
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
4 0 E > INIT_FCALL 'error_reporting'
1 SEND_VAL 32767
2 DO_ICALL
52 3 ASSIGN !0, 1712171982
56 4 INIT_ARRAY ~13 !0, 'constructor'
5 ADD_ARRAY_ELEMENT ~13 null, 'setTimestamp'
58 6 ADD_ARRAY_ELEMENT ~13 'UTC', 'initTimezone'
59 7 ADD_ARRAY_ELEMENT ~13 'Wed%2C+03+Apr+2024+19%3A19%3A42+%2B0000', 'expected'
60 8 ADD_ARRAY_ELEMENT ~13 0, 'expectedOffset'
9 INIT_ARRAY ~14 ~13
56 10 INIT_ARRAY ~15 null, 'constructor'
64 11 ADD_ARRAY_ELEMENT ~15 !0, 'setTimestamp'
65 12 ADD_ARRAY_ELEMENT ~15 'UTC', 'initTimezone'
66 13 ADD_ARRAY_ELEMENT ~15 'Wed%2C+03+Apr+2024+19%3A19%3A42+%2B0000', 'expected'
67 14 ADD_ARRAY_ELEMENT ~15 0, 'expectedOffset'
15 ADD_ARRAY_ELEMENT ~14 ~15
71 16 INIT_ARRAY ~16 !0, 'constructor'
56 17 ADD_ARRAY_ELEMENT ~16 null, 'setTimestamp'
73 18 ADD_ARRAY_ELEMENT ~16 'Europe%2FBerlin', 'initTimezone'
74 19 ADD_ARRAY_ELEMENT ~16 'Wed%2C+03+Apr+2024+19%3A19%3A42+%2B0000', 'expected'
75 20 ADD_ARRAY_ELEMENT ~16 0, 'expectedOffset'
21 ADD_ARRAY_ELEMENT ~14 ~16
56 22 INIT_ARRAY ~17 null, 'constructor'
79 23 ADD_ARRAY_ELEMENT ~17 !0, 'setTimestamp'
80 24 ADD_ARRAY_ELEMENT ~17 'Europe%2FBerlin', 'initTimezone'
81 25 ADD_ARRAY_ELEMENT ~17 'Wed%2C+03+Apr+2024+21%3A19%3A42+%2B0200', 'expected'
82 26 ADD_ARRAY_ELEMENT ~17 7200, 'expectedOffset'
27 ADD_ARRAY_ELEMENT ~14 ~17
86 28 INIT_ARRAY ~18 !0, 'constructor'
56 29 ADD_ARRAY_ELEMENT ~18 null, 'setTimestamp'
88 30 ADD_ARRAY_ELEMENT ~18 'Canada%2FAtlantic', 'initTimezone'
89 31 ADD_ARRAY_ELEMENT ~18 'Wed%2C+03+Apr+2024+19%3A19%3A42+%2B0000', 'expected'
90 32 ADD_ARRAY_ELEMENT ~18 0, 'expectedOffset'
33 ADD_ARRAY_ELEMENT ~14 ~18
56 34 INIT_ARRAY ~19 null, 'constructor'
94 35 ADD_ARRAY_ELEMENT ~19 !0, 'setTimestamp'
95 36 ADD_ARRAY_ELEMENT ~19 'Canada%2FAtlantic', 'initTimezone'
96 37 ADD_ARRAY_ELEMENT ~19 'Wed%2C+03+Apr+2024+16%3A19%3A42+-0300', 'expected'
56 38 ADD_ARRAY_ELEMENT ~19 -10800, 'expectedOffset'
39 ADD_ARRAY_ELEMENT ~14 ~19
53 40 ASSIGN !1, ~14
102 41 ASSIGN !2, 0
103 42 ASSIGN !3, 0
104 43 > FE_RESET_R $23 !1, ->80
44 > > FE_FETCH_R $23, !4, ->80
105 45 > PRE_INC !2
106 46 INIT_FCALL 'extract'
47 SEND_REF !4
48 SEND_VAL 0
49 DO_ICALL
107 50 INIT_FCALL 'sprintf'
108 51 SEND_VAL '%23%25s+TZ%3A+%25s+CONSTRUCTOR%3A+%25s+SETTIMESTAMP%3A+%25s'
109 52 SEND_VAR !2
110 53 SEND_VAR !6
111 54 TYPE_CHECK 2 !7
55 > JMPZ ~26, ->58
56 > QM_ASSIGN ~27 'N'
57 > JMP ->59
58 > QM_ASSIGN ~27 'Y'
59 > SEND_VAL ~27
112 60 TYPE_CHECK 2 !8
61 > JMPZ ~28, ->64
62 > QM_ASSIGN ~29 'N'
63 > JMP ->65
64 > QM_ASSIGN ~29 'Y'
65 > SEND_VAL ~29
107 66 DO_ICALL $30
67 ASSIGN !5, $30
114 68 INIT_FCALL 'check'
69 SEND_VAR !5
70 SEND_VAR !7
71 SEND_VAR !8
72 SEND_VAR !6
73 SEND_VAR !9
74 SEND_VAR !10
75 DO_FCALL 0 $32
76 BOOL_NOT ~33 $32
77 > JMPZ ~33, ->79
115 78 > PRE_INC !3
104 79 > > JMP ->44
80 > FE_FREE $23
119 81 ECHO '%0A'
120 82 CONCAT ~35 'TOTAL.%3A+', !2
83 CONCAT ~36 ~35, '%0A'
84 ECHO ~36
121 85 CONCAT ~37 'FAILED%3A+', !3
86 CONCAT ~38 ~37, '%0A'
87 ECHO ~38
122 88 ECHO '%0A'
123 89 > RETURN 1
Function check:
Finding entry points
Branch analysis from position: 0
2 jumps found. (Code = 43) Position 1 = 11, Position 2 = 15
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 20
Branch analysis from position: 20
2 jumps found. (Code = 43) Position 1 = 23, Position 2 = 27
Branch analysis from position: 23
2 jumps found. (Code = 46) Position 1 = 36, Position 2 = 38
Branch analysis from position: 36
2 jumps found. (Code = 46) Position 1 = 39, Position 2 = 47
Branch analysis from position: 39
2 jumps found. (Code = 43) Position 1 = 68, Position 2 = 70
Branch analysis from position: 68
1 jumps found. (Code = 42) Position 1 = 71
Branch analysis from position: 71
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 70
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 47
Branch analysis from position: 38
Branch analysis from position: 27
Branch analysis from position: 15
2 jumps found. (Code = 43) Position 1 = 23, Position 2 = 27
Branch analysis from position: 23
Branch analysis from position: 27
filename: /in/sGEe2
function name: check
number of ops: 80
compiled vars: !0 = $label, !1 = $constructor, !2 = $setTimestamp, !3 = $initTimezone, !4 = $expected, !5 = $expectedOffset, !6 = $dt, !7 = $formatted, !8 = $dtOffset, !9 = $valid
line #* E I O op fetch ext return operands
-------------------------------------------------------------------------------------
7 0 E > RECV !0
1 RECV !1
2 RECV !2
3 RECV !3
4 RECV !4
5 RECV !5
16 6 INIT_FCALL 'date_default_timezone_set'
7 SEND_VAR !3
8 DO_ICALL
18 9 TYPE_CHECK 2 !1
10 > JMPZ ~11, ->15
19 11 > NEW $12 'DateTimeImmutable'
12 DO_FCALL 0
13 QM_ASSIGN ~14 $12
14 > JMP ->20
20 15 > NEW $15 'DateTimeImmutable'
16 CONCAT ~16 '%40', !1
17 SEND_VAL_EX ~16
18 DO_FCALL 0
19 QM_ASSIGN ~14 $15
18 20 > ASSIGN !6, ~14
21 21 TYPE_CHECK 1020 !2
22 > JMPZ ~19, ->27
22 23 > INIT_METHOD_CALL !6, 'setTimestamp'
24 SEND_VAR_EX !2
25 DO_FCALL 0 $20
26 ASSIGN !6, $20
25 27 > INIT_METHOD_CALL !6, 'format'
28 SEND_VAL_EX 'D%2C+d+M+Y+H%3Ai%3As+O'
29 DO_FCALL 0 $22
30 ASSIGN !7, $22
26 31 INIT_METHOD_CALL !6, 'getOffset'
32 DO_FCALL 0 $24
33 ASSIGN !8, $24
28 34 IS_IDENTICAL ~26 !7, !4
35 > JMPZ_EX ~26 ~26, ->38
29 36 > IS_IDENTICAL ~27 !8, !5
37 BOOL ~26 ~27
38 > > JMPZ_EX ~26 ~26, ->47
30 39 > INIT_METHOD_CALL !6, 'getTimestamp'
40 DO_FCALL 0 $28
41 COALESCE ~29 !2
42 COALESCE ~30 !1
43 QM_ASSIGN ~30 ''
44 QM_ASSIGN ~29 ~30
45 IS_IDENTICAL ~31 $28, ~29
46 BOOL ~26 ~31
27 47 > ASSIGN !9, ~26
33 48 ECHO '--------------------------------------------------------------%0A'
34 49 CONCAT ~33 'LABEL.....%3A+', !0
50 CONCAT ~34 ~33, '%0A'
51 ECHO ~34
35 52 CONCAT ~35 'INIT_TZ...%3A+', !3
53 CONCAT ~36 ~35, '%0A'
54 ECHO ~36
36 55 CONCAT ~37 'DT_OFFSET.%3A+', !8
56 CONCAT ~38 ~37, '%0A'
57 ECHO ~38
37 58 CONCAT ~39 'EXP_OFFSET%3A+', !5
59 CONCAT ~40 ~39, '%0A'
60 ECHO ~40
38 61 CONCAT ~41 'EXPECTED..%3A+', !4
62 CONCAT ~42 ~41, '%0A'
63 ECHO ~42
39 64 CONCAT ~43 'FORMATTED.%3A+', !7
65 CONCAT ~44 ~43, '%0A'
66 ECHO ~44
40 67 > JMPZ !9, ->70
68 > QM_ASSIGN ~45 'Y'
69 > JMP ->71
70 > QM_ASSIGN ~45 'N'
71 > CONCAT ~46 'IS_VALID..%3A+', ~45
72 CONCAT ~47 ~46, '%0A'
73 ECHO ~47
41 74 ECHO '--------------------------------------------------------------%0A'
42 75 ECHO '%0A'
44 76 VERIFY_RETURN_TYPE !9
77 > RETURN !9
45 78* VERIFY_RETURN_TYPE
79* > RETURN null
End of function check
Generated using Vulcan Logic Dumper, using php 8.0.0