3v4l.org

run code in 300+ PHP versions simultaneously
<?php $starttime = microtime(true); $array = array(3,4,1,3,5,1,92,2,4124,424,52,12); $array_count = count($array); for ($c=0;$c<100000;$c++) { for ($i=0;$i<$array_count;$i++) { for ($y=0;$y<$array_count-1;$y++) { if ($array[$y+1] < $array[$y]) { $array[$y] ^= $array[$y + 1] ^= $array[$y] ^= $array[$y + 1]; } } } } echo microtime(true) - $starttime;
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 42) Position 1 = 35
Branch analysis from position: 35
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 9
Branch analysis from position: 37
1 jumps found. (Code = 62) Position 1 = -2
Branch analysis from position: 9
1 jumps found. (Code = 42) Position 1 = 32
Branch analysis from position: 32
2 jumps found. (Code = 44) Position 1 = 34, Position 2 = 11
Branch analysis from position: 34
2 jumps found. (Code = 44) Position 1 = 37, Position 2 = 9
Branch analysis from position: 37
Branch analysis from position: 9
Branch analysis from position: 11
1 jumps found. (Code = 42) Position 1 = 28
Branch analysis from position: 28
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 13
Branch analysis from position: 31
2 jumps found. (Code = 44) Position 1 = 34, Position 2 = 11
Branch analysis from position: 34
Branch analysis from position: 11
Branch analysis from position: 13
2 jumps found. (Code = 43) Position 1 = 18, Position 2 = 27
Branch analysis from position: 18
2 jumps found. (Code = 44) Position 1 = 31, Position 2 = 13
Branch analysis from position: 31
Branch analysis from position: 13
Branch analysis from position: 27
filename:       /in/lOhGG
function name:  (null)
number of ops:  43
compiled vars:  !0 = $starttime, !1 = $array, !2 = $array_count, !3 = $c, !4 = $i, !5 = $y
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    3     0  E >   INIT_FCALL                                               'microtime'
          1        SEND_VAL                                                 <true>
          2        DO_ICALL                                         $6      
          3        ASSIGN                                                   !0, $6
    4     4        ASSIGN                                                   !1, <array>
    5     5        COUNT                                            ~9      !1
          6        ASSIGN                                                   !2, ~9
    7     7        ASSIGN                                                   !3, 0
          8      > JMP                                                      ->35
    8     9    >   ASSIGN                                                   !4, 0
         10      > JMP                                                      ->32
    9    11    >   ASSIGN                                                   !5, 0
         12      > JMP                                                      ->28
   10    13    >   ADD                                              ~14     !5, 1
         14        FETCH_DIM_R                                      ~15     !1, ~14
         15        FETCH_DIM_R                                      ~16     !1, !5
         16        IS_SMALLER                                               ~15, ~16
         17      > JMPZ                                                     ~17, ->27
   11    18    >   ADD                                              ~19     !5, 1
         19        ADD                                              ~22     !5, 1
         20        FETCH_DIM_R                                      ~23     !1, ~22
         21        ASSIGN_DIM_OP                ^=              11  ~21     !1, !5
         22        OP_DATA                                                  ~23
         23        ASSIGN_DIM_OP                ^=              11  ~20     !1, ~19
         24        OP_DATA                                                  ~21
         25        ASSIGN_DIM_OP                ^=              11          !1, !5
         26        OP_DATA                                                  ~20
    9    27    >   PRE_INC                                                  !5
         28    >   SUB                                              ~25     !2, 1
         29        IS_SMALLER                                               !5, ~25
         30      > JMPNZ                                                    ~26, ->13
    8    31    >   PRE_INC                                                  !4
         32    >   IS_SMALLER                                               !4, !2
         33      > JMPNZ                                                    ~28, ->11
    7    34    >   PRE_INC                                                  !3
         35    >   IS_SMALLER                                               !3, 100000
         36      > JMPNZ                                                    ~30, ->9
   17    37    >   INIT_FCALL                                               'microtime'
         38        SEND_VAL                                                 <true>
         39        DO_ICALL                                         $31     
         40        SUB                                              ~32     $31, !0
         41        ECHO                                                     ~32
         42      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
155.33 ms | 1400 KiB | 15 Q