3v4l.org

run code in 300+ PHP versions simultaneously
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 14
Branch analysis from position: 14
2 jumps found. (Code = 44) Position 1 = 16, Position 2 = 6
Branch analysis from position: 16
1 jumps found. (Code = 42) Position 1 = 23
Branch analysis from position: 23
2 jumps found. (Code = 44) Position 1 = 25, Position 2 = 18
Branch analysis from position: 25
1 jumps found. (Code = 42) Position 1 = 57
Branch analysis from position: 57
2 jumps found. (Code = 44) Position 1 = 59, Position 2 = 52
Branch analysis from position: 59
1 jumps found. (Code = 42) Position 1 = 104
Branch analysis from position: 104
2 jumps found. (Code = 44) Position 1 = 106, Position 2 = 96
Branch analysis from position: 106
1 jumps found. (Code = 42) Position 1 = 154
Branch analysis from position: 154
2 jumps found. (Code = 44) Position 1 = 156, Position 2 = 144
Branch analysis from position: 156
1 jumps found. (Code = 42) Position 1 = 205
Branch analysis from position: 205
2 jumps found. (Code = 44) Position 1 = 207, Position 2 = 202
Branch analysis from position: 207
1 jumps found. (Code = 42) Position 1 = 254
Branch analysis from position: 254
2 jumps found. (Code = 44) Position 1 = 256, Position 2 = 249
Branch analysis from position: 256
1 jumps found. (Code = 42) Position 1 = 301
Branch analysis from position: 301
2 jumps found. (Code = 44) Position 1 = 303, Position 2 = 293
Branch analysis from position: 303
1 jumps found. (Code = 42) Position 1 = 348
Branch analysis from position: 348
2 jumps found. (Code = 44) Position 1 = 350, Position 2 = 343
Branch analysis from position: 350
1 jumps found. (Code = 42) Position 1 = 393
Branch analysis from position: 393
2 jumps found. (Code = 44) Position 1 = 395, Position 2 = 388
Branch analysis from position: 395
1 jumps found. (Code = 42) Position 1 = 438
Branch analysis from position: 438
2 jumps found. (Code = 44) Position 1 = 440, Position 2 = 433
Branch analysis from position: 440
1 jumps found. (Code = 42) Position 1 = 485
Branch analysis from position: 485
2 jumps found. (Code = 44) Position 1 = 487, Position 2 = 478
Branch analysis from position: 487
1 jumps found. (Code = 42) Position 1 = 533
Branch analysis from position: 533
2 jumps found. (Code = 44) Position 1 = 535, Position 2 = 526
Branch analysis from position: 535
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 526
2 jumps found. (Code = 44) Position 1 = 535, Position 2 = 526
Branch analysis from position: 535
Branch analysis from position: 526
Branch analysis from position: 478
2 jumps found. (Code = 44) Position 1 = 487, Position 2 = 478
Branch analysis from position: 487
Branch analysis from position: 478
Branch analysis from position: 433
2 jumps found. (Code = 44) Position 1 = 440, Position 2 = 433
Branch analysis from position: 440
Branch analysis from position: 433
Branch analysis from position: 388
2 jumps found. (Code = 44) Position 1 = 395, Position 2 = 388
Branch analysis from position: 395
Branch analysis from position: 388
Branch analysis from position: 343
2 jumps found. (Code = 44) Position 1 = 350, Position 2 = 343
Branch analysis from position: 350
Branch analysis from position: 343
Branch analysis from position: 293
2 jumps found. (Code = 44) Position 1 = 303, Position 2 = 293
Branch analysis from position: 303
Branch analysis from position: 293
Branch analysis from position: 249
2 jumps found. (Code = 44) Position 1 = 256, Position 2 = 249
Branch analysis from position: 256
Branch analysis from position: 249
Branch analysis from position: 202
2 jumps found. (Code = 44) Position 1 = 207, Position 2 = 202
Branch analysis from position: 207
Branch analysis from position: 202
Branch analysis from position: 144
2 jumps found. (Code = 44) Position 1 = 156, Position 2 = 144
Branch analysis from position: 156
Branch analysis from position: 144
Branch analysis from position: 96
2 jumps found. (Code = 44) Position 1 = 106, Position 2 = 96
Branch analysis from position: 106
Branch analysis from position: 96
Branch analysis from position: 52
2 jumps found. (Code = 44) Position 1 = 59, Position 2 = 52
Branch analysis from position: 59
Branch analysis from position: 52
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 25, Position 2 = 18
Branch analysis from position: 25
Branch analysis from position: 18
Branch analysis from position: 6
2 jumps found. (Code = 44) Position 1 = 16, Position 2 = 6
Branch analysis from position: 16
Branch analysis from position: 6
filename:       /in/rDpVv
function name:  (null)
number of ops:  566
compiled vars:  !0 = $runs, !1 = $i, !2 = $obj, !3 = $memories, !4 = $time_start, !5 = $time_end, !6 = $time1, !7 = $last_memory, !8 = $memory_diff, !9 = $storage, !10 = $storage2, !11 = $counter
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'set_time_limit'
          1        SEND_VAL                                                 0
          2        DO_ICALL                                                 
  162     3        ASSIGN                                                   !0, 10
  163     4        ASSIGN                                                   !1, 0
          5      > JMP                                                      ->14
  164     6    >   NEW                                              $15     'Dynamic1'
          7        DO_FCALL                                      0          
          8        ASSIGN                                                   !2, $15
  165     9        INIT_METHOD_CALL                                         !2, 'incrByOne'
         10        DO_FCALL                                      0          
  166    11        INIT_METHOD_CALL                                         !2, 'incrByTwo'
         12        DO_FCALL                                      0          
  163    13        PRE_INC                                                  !1
         14    >   IS_SMALLER                                               !1, !0
         15      > JMPNZ                                                    ~21, ->6
  168    16    >   ASSIGN                                                   !1, 0
         17      > JMP                                                      ->23
  169    18    >   INIT_STATIC_METHOD_CALL                                  'Static1', 'incrByOne'
         19        DO_FCALL                                      0          
  170    20        INIT_STATIC_METHOD_CALL                                  'Static1', 'incrByTwo'
         21        DO_FCALL                                      0          
  168    22        PRE_INC                                                  !1
         23    >   IS_SMALLER                                               !1, !0
         24      > JMPNZ                                                    ~26, ->18
  172    25    >   UNSET_CV                                                 !2
         26        UNSET_CV                                                 !1
  174    27        ASSIGN                                                   !0, 500000
  175    28        INIT_FCALL                                               'memory_get_usage'
         29        DO_ICALL                                         $28     
         30        INIT_ARRAY                                       ~29     $28
         31        ASSIGN                                                   !3, ~29
  177    32        ECHO                                                     'Runs+by+case%3A+'
         33        ECHO                                                     !0
         34        ECHO                                                     '+%0AMemory+usage+at+start%3A+'
  178    35        INIT_FCALL                                               'number_format'
         36        INIT_FCALL                                               'end'
         37        SEND_REF                                                 !3
         38        DO_ICALL                                         $31     
         39        SEND_VAR                                                 $31
         40        DO_ICALL                                         $32     
         41        ECHO                                                     $32
  179    42        ECHO                                                     '%0A'
  181    43        INIT_FCALL                                               'microtime'
         44        SEND_VAL                                                 <true>
         45        DO_ICALL                                         $33     
         46        ASSIGN                                                   !4, $33
  182    47        NEW                                              $35     'Dynamic1'
         48        DO_FCALL                                      0          
         49        ASSIGN                                                   !2, $35
  183    50        ASSIGN                                                   !1, 0
         51      > JMP                                                      ->57
  184    52    >   INIT_METHOD_CALL                                         !2, 'incrByOne'
         53        DO_FCALL                                      0          
  185    54        INIT_METHOD_CALL                                         !2, 'incrByTwo'
         55        DO_FCALL                                      0          
  183    56        PRE_INC                                                  !1
         57    >   IS_SMALLER                                               !1, !0
         58      > JMPNZ                                                    ~42, ->52
  188    59    >   INIT_FCALL                                               'microtime'
         60        SEND_VAL                                                 <true>
         61        DO_ICALL                                         $43     
         62        ASSIGN                                                   !5, $43
  189    63        SUB                                              ~45     !5, !4
         64        ASSIGN                                                   !6, ~45
  190    65        INIT_FCALL                                               'end'
         66        SEND_REF                                                 !3
         67        DO_ICALL                                         $47     
         68        ASSIGN                                                   !7, $47
  191    69        INIT_FCALL                                               'memory_get_usage'
         70        DO_ICALL                                         $50     
         71        ASSIGN_DIM                                               !3
         72        OP_DATA                                                  $50
  192    73        INIT_FCALL                                               'end'
         74        SEND_REF                                                 !3
         75        DO_ICALL                                         $51     
         76        SUB                                              ~52     $51, !7
         77        ASSIGN                                                   !8, ~52
  194    78        ECHO                                                     '%2B+Dynamic%0ATotal+execution+time+is+'
  195    79        INIT_FCALL                                               'number_format'
         80        SEND_VAR                                                 !6
         81        SEND_VAL                                                 4
         82        DO_ICALL                                         $54     
         83        ECHO                                                     $54
         84        ECHO                                                     '+%0AUsed+memory%3A+'
  196    85        INIT_FCALL                                               'number_format'
         86        SEND_VAR                                                 !8
         87        DO_ICALL                                         $55     
         88        ECHO                                                     $55
  197    89        ECHO                                                     '%0A'
  199    90        INIT_FCALL                                               'microtime'
         91        SEND_VAL                                                 <true>
         92        DO_ICALL                                         $56     
         93        ASSIGN                                                   !4, $56
  200    94        ASSIGN                                                   !1, 0
         95      > JMP                                                      ->104
  201    96    >   NEW                                              $59     'Dynamic1'
         97        DO_FCALL                                      0          
         98        ASSIGN                                                   !2, $59
  202    99        INIT_METHOD_CALL                                         !2, 'incrByOne'
        100        DO_FCALL                                      0          
  203   101        INIT_METHOD_CALL                                         !2, 'incrByTwo'
        102        DO_FCALL                                      0          
  200   103        PRE_INC                                                  !1
        104    >   IS_SMALLER                                               !1, !0
        105      > JMPNZ                                                    ~65, ->96
  206   106    >   INIT_FCALL                                               'microtime'
        107        SEND_VAL                                                 <true>
        108        DO_ICALL                                         $66     
        109        ASSIGN                                                   !5, $66
  207   110        SUB                                              ~68     !5, !4
        111        ASSIGN                                                   !6, ~68
  208   112        INIT_FCALL                                               'end'
        113        SEND_REF                                                 !3
        114        DO_ICALL                                         $70     
        115        ASSIGN                                                   !7, $70
  209   116        INIT_FCALL                                               'memory_get_usage'
        117        DO_ICALL                                         $73     
        118        ASSIGN_DIM                                               !3
        119        OP_DATA                                                  $73
  210   120        INIT_FCALL                                               'end'
        121        SEND_REF                                                 !3
        122        DO_ICALL                                         $74     
        123        SUB                                              ~75     $74, !7
        124        ASSIGN                                                   !8, ~75
  212   125        ECHO                                                     '%0A%2B+Dynamic+instantiated%0ATotal+execution+time+is+'
  214   126        INIT_FCALL                                               'number_format'
        127        SEND_VAR                                                 !6
        128        SEND_VAL                                                 4
        129        DO_ICALL                                         $77     
        130        ECHO                                                     $77
        131        ECHO                                                     '+%0AUsed+memory%3A+'
  215   132        INIT_FCALL                                               'number_format'
        133        SEND_VAR                                                 !8
        134        DO_ICALL                                         $78     
        135        ECHO                                                     $78
  216   136        ECHO                                                     '%0A'
  218   137        ASSIGN                                                   !9, <array>
  219   138        INIT_FCALL                                               'microtime'
        139        SEND_VAL                                                 <true>
        140        DO_ICALL                                         $80     
        141        ASSIGN                                                   !4, $80
  220   142        ASSIGN                                                   !1, 0
        143      > JMP                                                      ->154
  221   144    >   NEW                                              $83     'Dynamic1'
        145        DO_FCALL                                      0          
        146        ASSIGN                                                   !2, $83
  222   147        INIT_METHOD_CALL                                         !2, 'incrByOne'
        148        DO_FCALL                                      0          
  223   149        INIT_METHOD_CALL                                         !2, 'incrByTwo'
        150        DO_FCALL                                      0          
  224   151        ASSIGN_DIM                                               !9
        152        OP_DATA                                                  !2
  220   153        PRE_INC                                                  !1
        154    >   IS_SMALLER                                               !1, !0
        155      > JMPNZ                                                    ~90, ->144
  227   156    >   INIT_FCALL                                               'microtime'
        157        SEND_VAL                                                 <true>
        158        DO_ICALL                                         $91     
        159        ASSIGN                                                   !5, $91
  228   160        SUB                                              ~93     !5, !4
        161        ASSIGN                                                   !6, ~93
  229   162        INIT_FCALL                                               'end'
        163        SEND_REF                                                 !3
        164        DO_ICALL                                         $95     
        165        ASSIGN                                                   !7, $95
  230   166        INIT_FCALL                                               'memory_get_usage'
        167        DO_ICALL                                         $98     
        168        ASSIGN_DIM                                               !3
        169        OP_DATA                                                  $98
  231   170        INIT_FCALL                                               'end'
        171        SEND_REF                                                 !3
        172        DO_ICALL                                         $99     
        173        SUB                                              ~100    $99, !7
        174        ASSIGN                                                   !8, ~100
  232   175        UNSET_CV                                                 !9
  233   176        INIT_FCALL                                               'memory_get_usage'
        177        DO_ICALL                                         $103    
        178        ASSIGN_DIM                                               !3
        179        OP_DATA                                                  $103
  235   180        ECHO                                                     '%0A%2B+Dynamic+instantiated+stored%0ATotal+execution+time+is+'
  237   181        INIT_FCALL                                               'number_format'
        182        SEND_VAR                                                 !6
        183        SEND_VAL                                                 4
        184        DO_ICALL                                         $104    
        185        ECHO                                                     $104
        186        ECHO                                                     '+%0AUsed+memory%3A+'
  238   187        INIT_FCALL                                               'number_format'
        188        SEND_VAR                                                 !8
        189        DO_ICALL                                         $105    
        190        ECHO                                                     $105
  239   191        ECHO                                                     '%0A'
  241   192        ASSIGN                                                   !10, <array>
  242   193        NEW                                              $107    'Dynamic1'
        194        DO_FCALL                                      0          
        195        ASSIGN                                                   !2, $107
  243   196        INIT_FCALL                                               'microtime'
        197        SEND_VAL                                                 <true>
        198        DO_ICALL                                         $110    
        199        ASSIGN                                                   !4, $110
  244   200        ASSIGN                                                   !1, 0
        201      > JMP                                                      ->205
  245   202    >   ASSIGN_DIM                                               !10
        203        OP_DATA                                                  !2
  244   204        PRE_INC                                                  !1
        205    >   IS_SMALLER                                               !1, !0
        206      > JMPNZ                                                    ~115, ->202
  248   207    >   INIT_FCALL                                               'microtime'
        208        SEND_VAL                                                 <true>
        209        DO_ICALL                                         $116    
        210        ASSIGN                                                   !5, $116
  249   211        SUB                                              ~118    !5, !4
        212        ASSIGN                                                   !6, ~118
  250   213        INIT_FCALL                                               'end'
        214        SEND_REF                                                 !3
        215        DO_ICALL                                         $120    
        216        ASSIGN                                                   !7, $120
  251   217        INIT_FCALL                                               'memory_get_usage'
        218        DO_ICALL                                         $123    
        219        ASSIGN_DIM                                               !3
        220        OP_DATA                                                  $123
  252   221        INIT_FCALL                                               'end'
        222        SEND_REF                                                 !3
        223        DO_ICALL                                         $124    
        224        SUB                                              ~125    $124, !7
        225        ASSIGN                                                   !8, ~125
  253   226        UNSET_CV                                                 !10
  254   227        INIT_FCALL                                               'memory_get_usage'
        228        DO_ICALL                                         $128    
        229        ASSIGN_DIM                                               !3
        230        OP_DATA                                                  $128
  256   231        ECHO                                                     '%0A%2B+Storage+only%0ATotal+execution+time+is+'
  258   232        INIT_FCALL                                               'number_format'
        233        SEND_VAR                                                 !6
        234        SEND_VAL                                                 4
        235        DO_ICALL                                         $129    
        236        ECHO                                                     $129
        237        ECHO                                                     '+%0AUsed+memory%3A+'
  259   238        INIT_FCALL                                               'number_format'
        239        SEND_VAR                                                 !8
        240        DO_ICALL                                         $130    
        241        ECHO                                                     $130
  260   242        ECHO                                                     '%0A'
  262   243        INIT_FCALL                                               'microtime'
        244        SEND_VAL                                                 <true>
        245        DO_ICALL                                         $131    
        246        ASSIGN                                                   !4, $131
  263   247        ASSIGN                                                   !1, 0
        248      > JMP                                                      ->254
  264   249    >   INIT_STATIC_METHOD_CALL                                  'Static1', 'incrByOne'
        250        DO_FCALL                                      0          
  265   251        INIT_STATIC_METHOD_CALL                                  'Static1', 'incrByTwo'
        252        DO_FCALL                                      0          
  263   253        PRE_INC                                                  !1
        254    >   IS_SMALLER                                               !1, !0
        255      > JMPNZ                                                    ~137, ->249
  268   256    >   INIT_FCALL                                               'microtime'
        257        SEND_VAL                                                 <true>
        258        DO_ICALL                                         $138    
        259        ASSIGN                                                   !5, $138
  269   260        SUB                                              ~140    !5, !4
        261        ASSIGN                                                   !6, ~140
  270   262        INIT_FCALL                                               'end'
        263        SEND_REF                                                 !3
        264        DO_ICALL                                         $142    
        265        ASSIGN                                                   !7, $142
  271   266        INIT_FCALL                                               'memory_get_usage'
        267        DO_ICALL                                         $145    
        268        ASSIGN_DIM                                               !3
        269        OP_DATA                                                  $145
  272   270        INIT_FCALL                                               'end'
        271        SEND_REF                                                 !3
        272        DO_ICALL                                         $146    
        273        SUB                                              ~147    $146, !7
        274        ASSIGN                                                   !8, ~147
  274   275        ECHO                                                     '%0A%2B+Static+%0ATotal+execution+time+is+'
  276   276        INIT_FCALL                                               'number_format'
        277        SEND_VAR                                                 !6
        278        SEND_VAL                                                 4
        279        DO_ICALL                                         $149    
        280        ECHO                                                     $149
        281        ECHO                                                     '+%0AUsed+memory%3A+'
  277   282        INIT_FCALL                                               'number_format'
        283        SEND_VAR                                                 !8
        284        DO_ICALL                                         $150    
        285        ECHO                                                     $150
  278   286        ECHO                                                     '%0A'
  280   287        INIT_FCALL                                               'microtime'
        288        SEND_VAL                                                 <true>
        289        DO_ICALL                                         $151    
        290        ASSIGN                                                   !4, $151
  281   291        ASSIGN                                                   !1, 0
        292      > JMP                                                      ->301
  282   293    >   INIT_STATIC_METHOD_CALL                                  'Singleton1', 'getInstance'
        294        DO_FCALL                                      0  $154    
        295        ASSIGN                                                   !2, $154
  283   296        INIT_METHOD_CALL                                         !2, 'incrByOne'
        297        DO_FCALL                                      0          
  284   298        INIT_METHOD_CALL                                         !2, 'incrByTwo'
        299        DO_FCALL                                      0          
  281   300        PRE_INC                                                  !1
        301    >   IS_SMALLER                                               !1, !0
        302      > JMPNZ                                                    ~159, ->293
  287   303    >   INIT_FCALL                                               'microtime'
        304        SEND_VAL                                                 <true>
        305        DO_ICALL                                         $160    
        306        ASSIGN                                                   !5, $160
  288   307        SUB                                              ~162    !5, !4
        308        ASSIGN                                                   !6, ~162
  289   309        INIT_FCALL                                               'end'
        310        SEND_REF                                                 !3
        311        DO_ICALL                                         $164    
        312        ASSIGN                                                   !7, $164
  290   313        INIT_FCALL                                               'memory_get_usage'
        314        DO_ICALL                                         $167    
        315        ASSIGN_DIM                                               !3
        316        OP_DATA                                                  $167
  291   317        INIT_FCALL                                               'end'
        318        SEND_REF                                                 !3
        319        DO_ICALL                                         $168    
        320        SUB                                              ~169    $168, !7
        321        ASSIGN                                                   !8, ~169
  293   322        ECHO                                                     '%0A%2B+Singletons+with+many+getInstance%0ATotal+execution+time+is+'
  295   323        INIT_FCALL                                               'number_format'
        324        SEND_VAR                                                 !6
        325        SEND_VAL                                                 4
        326        DO_ICALL                                         $171    
        327        ECHO                                                     $171
        328        ECHO                                                     '+%0AUsed+memory%3A+'
  296   329        INIT_FCALL                                               'number_format'
        330        SEND_VAR                                                 !8
        331        DO_ICALL                                     

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
152.77 ms | 1004 KiB | 18 Q