Finding entry points Branch analysis from position: 0 1 jumps found. (Code = 42) Position 1 = 26 Branch analysis from position: 26 2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 12 Branch analysis from position: 29 1 jumps found. (Code = 42) Position 1 = 45 Branch analysis from position: 45 2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 31 Branch analysis from position: 48 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 31 2 jumps found. (Code = 44) Position 1 = 48, Position 2 = 31 Branch analysis from position: 48 Branch analysis from position: 31 Branch analysis from position: 12 2 jumps found. (Code = 44) Position 1 = 29, Position 2 = 12 Branch analysis from position: 29 Branch analysis from position: 12 filename: /in/NatvM function name: (null) number of ops: 49 compiled vars: !0 = $input, !1 = $bits, !2 = $output, !3 = $i line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 65 0 E > ASSIGN !0, 'abc%00' 66 1 ASSIGN !1, 5 68 2 INIT_FCALL 'string_shift_right' 3 SEND_VAR !0 4 STRLEN ~6 !0 5 SUB ~7 ~6, 1 6 SEND_VAL ~7 7 SEND_VAR !1 8 SEND_REF !2 9 DO_FCALL 0 70 10 ASSIGN !3, 0 11 > JMP ->26 71 12 > INIT_FCALL 'printf' 13 SEND_VAL '%0A%2502x%3A+%2508b' 14 INIT_FCALL 'ord' 15 FETCH_DIM_R ~10 !0, !3 16 SEND_VAL ~10 17 DO_ICALL $11 18 SEND_VAR $11 19 INIT_FCALL 'ord' 20 FETCH_DIM_R ~12 !0, !3 21 SEND_VAL ~12 22 DO_ICALL $13 23 SEND_VAR $13 24 DO_ICALL 70 25 PRE_INC !3 26 > STRLEN ~16 !0 27 IS_SMALLER !3, ~16 28 > JMPNZ ~17, ->12 73 29 > ASSIGN !3, 0 30 > JMP ->45 74 31 > INIT_FCALL 'printf' 32 SEND_VAL '%0A%2502x%3A+%2508b' 33 INIT_FCALL 'ord' 34 FETCH_DIM_R ~19 !2, !3 35 SEND_VAL ~19 36 DO_ICALL $20 37 SEND_VAR $20 38 INIT_FCALL 'ord' 39 FETCH_DIM_R ~21 !2, !3 40 SEND_VAL ~21 41 DO_ICALL $22 42 SEND_VAR $22 43 DO_ICALL 73 44 PRE_INC !3 45 > STRLEN ~25 !2 46 IS_SMALLER !3, ~25 47 > JMPNZ ~26, ->31 75 48 > > RETURN 1 Function string_shift_left: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 35, Position 2 = 45 Branch analysis from position: 35 1 jumps found. (Code = 42) Position 1 = 42 Branch analysis from position: 42 2 jumps found. (Code = 44) Position 1 = 44, Position 2 = 37 Branch analysis from position: 44 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 37 2 jumps found. (Code = 44) Position 1 = 44, Position 2 = 37 Branch analysis from position: 44 Branch analysis from position: 37 Branch analysis from position: 45 1 jumps found. (Code = 42) Position 1 = 78 Branch analysis from position: 78 2 jumps found. (Code = 44) Position 1 = 80, Position 2 = 47 Branch analysis from position: 80 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 47 2 jumps found. (Code = 44) Position 1 = 80, Position 2 = 47 Branch analysis from position: 80 Branch analysis from position: 47 filename: /in/NatvM function name: string_shift_left number of ops: 81 compiled vars: !0 = $input, !1 = $inputlen, !2 = $bits, !3 = $output, !4 = $skip, !5 = $copylen, !6 = $offset, !7 = $mask, !8 = $i, !9 = $left, !10 = $right line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 3 0 E > RECV !0 1 RECV !1 2 RECV !2 3 RECV_INIT !3 null 5 4 DIV ~11 !2, 8 5 CAST 4 ~12 ~11 6 ASSIGN !4, ~12 6 7 SUB ~14 !1, !4 8 CAST 4 ~15 ~14 9 ASSIGN !5, ~15 7 10 MOD ~17 !2, 8 11 BW_AND ~18 ~17, 255 12 ASSIGN !6, ~18 8 13 SR ~20 255, !6 14 BW_NOT ~21 ~20 15 BW_AND ~22 ~21, 255 16 ASSIGN !7, ~22 10 17 INIT_FCALL 'str_pad' 18 SEND_VAL '' 19 ADD ~24 !1, 1 20 SEND_VAL ~24 21 SEND_VAL '%00' 22 DO_ICALL $25 23 ASSIGN !3, $25 12 24 ROPE_INIT 8 ~28 !4 25 ROPE_ADD 1 ~28 ~28, '+' 26 ROPE_ADD 2 ~28 ~28, !5 27 ROPE_ADD 3 ~28 ~28, '+' 28 ROPE_ADD 4 ~28 ~28, !6 29 ROPE_ADD 5 ~28 ~28, '+' 30 ROPE_ADD 6 ~28 ~28, !7 31 ROPE_END 7 ~27 ~28, '%0A' 32 ECHO ~27 14 33 IS_EQUAL !6, 0 34 > JMPZ ~32, ->45 16 35 > ASSIGN !8, 0 36 > JMP ->42 17 37 > ADD ~35 !8, !4 38 FETCH_DIM_R ~36 !0, ~35 39 ASSIGN_DIM !3, !8 40 OP_DATA ~36 16 41 PRE_INC !8 42 > IS_SMALLER !8, !5 43 > JMPNZ ~38, ->37 19 44 > > RETURN null 22 45 > ASSIGN !8, 0 46 > JMP ->78 23 47 > INIT_FCALL 'ord' 48 ADD ~40 !8, !4 49 FETCH_DIM_R ~41 !0, ~40 50 SEND_VAL ~41 51 DO_ICALL $42 52 SL ~43 $42, !6 53 BW_AND ~44 ~43, 255 54 ASSIGN !9, ~44 24 55 INIT_FCALL 'ord' 56 ADD ~46 !8, !4 57 ADD ~47 ~46, 1 58 FETCH_DIM_R ~48 !0, ~47 59 SEND_VAL ~48 60 DO_ICALL $49 61 BW_AND ~50 !7, $49 62 SUB ~51 8, !6 63 SR ~52 ~50, ~51 64 ASSIGN !10, ~52 25 65 INIT_FCALL 'printf' 66 SEND_VAL '%2508b+%2508b%0A' 67 SEND_VAR !9 68 SEND_VAR !10 69 DO_ICALL 26 70 INIT_FCALL 'chr' 71 BW_OR ~56 !9, !10 72 BW_AND ~57 ~56, 255 73 SEND_VAL ~57 74 DO_ICALL $58 75 ASSIGN_DIM !3, !8 76 OP_DATA $58 22 77 PRE_INC !8 78 > IS_SMALLER !8, !5 79 > JMPNZ ~60, ->47 28 80 > > RETURN null End of function string_shift_left Function string_shift_right: Finding entry points Branch analysis from position: 0 2 jumps found. (Code = 43) Position 1 = 20, Position 2 = 22 Branch analysis from position: 20 1 jumps found. (Code = 42) Position 1 = 23 Branch analysis from position: 23 1 jumps found. (Code = 42) Position 1 = 48 Branch analysis from position: 48 2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 42 Branch analysis from position: 50 2 jumps found. (Code = 43) Position 1 = 52, Position 2 = 64 Branch analysis from position: 52 1 jumps found. (Code = 42) Position 1 = 61 Branch analysis from position: 61 2 jumps found. (Code = 44) Position 1 = 63, Position 2 = 56 Branch analysis from position: 63 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 56 2 jumps found. (Code = 44) Position 1 = 63, Position 2 = 56 Branch analysis from position: 63 Branch analysis from position: 56 Branch analysis from position: 64 1 jumps found. (Code = 42) Position 1 = 117 Branch analysis from position: 117 2 jumps found. (Code = 44) Position 1 = 119, Position 2 = 89 Branch analysis from position: 119 1 jumps found. (Code = 62) Position 1 = -2 Branch analysis from position: 89 2 jumps found. (Code = 44) Position 1 = 119, Position 2 = 89 Branch analysis from position: 119 Branch analysis from position: 89 Branch analysis from position: 42 2 jumps found. (Code = 44) Position 1 = 50, Position 2 = 42 Branch analysis from position: 50 Branch analysis from position: 42 Branch analysis from position: 22 1 jumps found. (Code = 42) Position 1 = 48 Branch analysis from position: 48 filename: /in/NatvM function name: string_shift_right number of ops: 120 compiled vars: !0 = $input, !1 = $inputlen, !2 = $bits, !3 = $output, !4 = $skip, !5 = $copylen, !6 = $offsetr, !7 = $signbits, !8 = $i, !9 = $l, !10 = $offsetl, !11 = $mask, !12 = $left, !13 = $right line #* E I O op fetch ext return operands ------------------------------------------------------------------------------------- 30 0 E > RECV !0 1 RECV !1 2 RECV !2 3 RECV_INIT !3 null 32 4 DIV ~14 !2, 8 5 CAST 4 ~15 ~14 6 ASSIGN !4, ~15 33 7 SUB ~17 !1, !4 8 CAST 4 ~18 ~17 9 ASSIGN !5, ~18 34 10 MOD ~20 !2, 8 11 BW_AND ~21 ~20, 255 12 ASSIGN !6, ~21 35 13 INIT_FCALL 'ord' 14 FETCH_DIM_R ~23 !0, 0 15 SEND_VAL ~23 16 DO_ICALL $24 17 BW_AND ~25 $24, 128 18 IS_EQUAL ~25, 0 19 > JMPZ ~26, ->22 20 > QM_ASSIGN ~27 0 21 > JMP ->23 22 > QM_ASSIGN ~27 255 23 > ASSIGN !7, ~27 37 24 ROPE_INIT 8 ~30 !4 25 ROPE_ADD 1 ~30 ~30, '+' 26 ROPE_ADD 2 ~30 ~30, !5 27 ROPE_ADD 3 ~30 ~30, '+' 28 ROPE_ADD 4 ~30 ~30, !6 29 ROPE_ADD 5 ~30 ~30, '+' 30 ROPE_ADD 6 ~30 ~30, !7 31 ROPE_END 7 ~29 ~30, '%0A' 32 ECHO ~29 39 33 INIT_FCALL 'str_pad' 34 SEND_VAL '' 35 ADD ~34 !1, 1 36 SEND_VAL ~34 37 SEND_VAL '%00' 38 DO_ICALL $35 39 ASSIGN !3, $35 40 40 ASSIGN !8, 0 41 > JMP ->48 41 42 > INIT_FCALL 'chr' 43 SEND_VAR !7 44 DO_ICALL $39 45 ASSIGN_DIM !3, !8 46 OP_DATA $39 40 47 PRE_INC !8 48 > IS_SMALLER !8, !4 49 > JMPNZ ~41, ->42 44 50 > IS_EQUAL !6, 0 51 > JMPZ ~42, ->64 46 52 > ASSIGN !8, !4 53 ADD ~44 !8, !5 54 ASSIGN !9, ~44 55 > JMP ->61 47 56 > SUB ~47 !8, !4 57 FETCH_DIM_R ~48 !0, ~47 58 ASSIGN_DIM !3, !8 59 OP_DATA ~48 46 60 PRE_INC !8 61 > IS_SMALLER !8, !9 62 > JMPNZ ~50, ->56 49 63 > > RETURN null 52 64 > SUB ~51 8, !6 65 ASSIGN !10, ~51 53 66 SR ~53 255, !6 67 BW_NOT ~54 ~53 68 BW_AND ~55 ~54, 255 69 ASSIGN !11, ~55 55 70 INIT_FCALL 'chr' 71 SR ~58 255, !10 72 BW_NOT ~59 ~58 73 BW_AND ~60 !7, ~59 74 INIT_FCALL 'ord' 75 FETCH_DIM_R ~61 !0, 0 76 SEND_VAL ~61 77 DO_ICALL $62 78 SR ~63 $62, !10 79 BW_OR ~64 ~60, ~63 80 SEND_VAL ~64 81 DO_ICALL $65 82 ASSIGN_DIM !3, !4 83 OP_DATA $65 57 84 ADD ~66 !4, 1 85 ASSIGN !8, ~66 86 ADD ~68 !4, !5 87 ASSIGN !9, ~68 88 > JMP ->117 58 89 > INIT_FCALL 'ord' 90 SUB ~70 !8, !4 91 SUB ~71 ~70, 1 92 FETCH_DIM_R ~72 !0, ~71 93 SEND_VAL ~72 94 DO_ICALL $73 95 SL ~74 $73, !10 96 ASSIGN !12, ~74 59 97 INIT_FCALL 'ord' 98 SUB ~76 !8, !4 99 FETCH_DIM_R ~77 !0, ~76 100 SEND_VAL ~77 101 DO_ICALL $78 102 BW_AND ~79 !11, $78 103 SR ~80 ~79, !6 104 ASSIGN !13, ~80 60 105 INIT_FCALL 'printf' 106 SEND_VAL '%2508b+%2508b%0A' 107 SEND_VAR !12 108 SEND_VAR !13 109 DO_ICALL 61 110 INIT_FCALL 'chr' 111 BW_OR ~84 !12, !13 112 SEND_VAL ~84 113 DO_ICALL $85 114 ASSIGN_DIM !3, !8 115 OP_DATA $85 57 116 PRE_INC !8 117 > IS_SMALLER !8, !9 118 > JMPNZ ~87, ->89 63 119 > > RETURN null End of function string_shift_right
Generated using Vulcan Logic Dumper, using php 8.0.0