diff --git a/internals2/opcodes.xml b/internals2/opcodes.xml
index b50bc05ab3..a2047b7cb8 100644
--- a/internals2/opcodes.xml
+++ b/internals2/opcodes.xml
@@ -286,9093 +286,142 @@
-
- ADD
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ADD
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- ADD_ARRAY_ELEMENT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- SEND_VAR
-
- !0
-
-
- 5
- DO_FCALL
- 1
- 'print_r'
-
-
- 86
- RETURN
-
- 1
-
-
-
-
-
-
-
- ADD_CHAR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ECHO
-
- 'hello%5C+world'
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- DECLARE_INHERITED_CLASS_DELAYED
-
-
-
- ADD_STRING
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ADD_STRING
- ~0
- 'hello'
-
-
- 1
- ADD_VAR
- ~0
- ~0,!0
-
-
- 2
- ADD_STRING
- ~0
- ~0,'+world'
-
-
- 3
- ECHO
-
- ~0
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- ADD_VAR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ADD_STRING
- ~0
- 'hello'
-
-
- 1
- ADD_VAR
- ~0
- ~0,!0
-
-
- 2
- ADD_STRING
- ~0
- ~0,'+world'
-
-
- 3
- ECHO
-
- ~0
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- ASSIGN
-
- !0,'a'
-
-
- 82
- ZEND_FETCH_CLASS
- :2
- 'A'
-
-
- 3
- NEW
- $3
- :2
-
-
- 4
- DO_FCALL_BY_NAME
- 0
-
-
-
- 5
- ASSIGN
-
- !0,$3
-
-
- 96
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_ADD
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_ADD
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_BW_AND
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_BW_AND
-
- !0,64
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_BW_OR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_BW_OR
-
- !0,64
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_BW_XOR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_BW_XOR
-
- !0,64
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_CONCAT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_CONCAT
-
- !0,'z'
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_DIM
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$b, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- FETCH_DIM_W
- $1
- !1,1
-
-
- 2
- ZEND_ASSIGN_DIM
-
- $1,2
-
-
- 3
- ZEND_OP_DATA
-
- !0,$3
-
-
- 84
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_DIV
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_DIV
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_MOD
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_MOD
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_MUL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_MUL
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_OBJ
-
- PHP code
-
-a = $otherobj;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj, !1=$otherobj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_ASSIGN_OBJ
-
- !0,'a'
-
-
- 1
- ZEND_OP_DATA
-
- !1
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_REF
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- FETCH_Wgloballock
- $0
- 'a'
-
-
- 1
- ASSIGN_REF
-
- !0,$0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_SL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_SL
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_SR
-
- PHP code
-
->= 3;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_SR
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- ASSIGN_SUB
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN_SUB
-
- !0,3
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- BEGIN_SILENCE
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$my_file, !1=$php_errormsg
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- BEGIN_SILENCE
- ~0
-
-
-
- 1
- SEND_VAL
-
- 'non_existent_file'
-
-
- 2
- DO_FCALL
- 1
- 'file'
-
-
- 3
- END_SILENCE
-
- ~0
-
-
- 4
- ASSIGN
- $2
- !0,$1
-
-
- 5
- JMPNZ_EX
- ~3
- $2,->11
-
-
- 86
- ADD_STRING
- ~4
- 'error%3A%27'
-
-
- 7
- ADD_VAR
- ~4
- ~4,!1
-
-
- 8
- ADD_CHAR
- ~4
- ~4,39
-
-
- 9
- EXIT
-
- ~4
-
-
- 10
- BOOL
- ~3
- true
-
-
- 11
- FREE
-
- ~3
-
-
- 912
- RETURN
-
- 1
-
-
-
-
-
-
-
- BOOL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- JMPNZ_EX
- ~0
- 1,->2
-
-
- 1
- BOOL
- ~0
- 2
-
-
- 2
- JMPNZ_EX
- ~0
- ~0,->4
-
-
- 3
- BOOL
- ~0
- 1
-
-
- 4
- JMPZ
-
- ~0,->7
-
-
- 5
- ECHO
-
- 'foo'
-
-
- 6
- JMP
-
- ->7
-
-
- 97
- RETURN
-
- 1
-
-
-
-
-
-
-
- BOOL_NOT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BOOL_NOT
- ~0
- 1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- BOOL_XOR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BOOL_XOR
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- BRK
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,0
-
-
- 71
- JMPZ
-
- 1,->7
-
-
- 82
- IS_EQUAL
- ~1
- !0,0
-
-
- 3
- JMPZ
-
- ~1,->6
-
-
- 4
- BRK
-
- 1
-
-
- 5
- JMP
-
- ->6
-
-
- 96
- JMP
-
- ->1
-
-
- 107
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- BW_AND
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BW_AND
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- BW_NOT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BW_NOT
- ~0
- 15
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- BW_OR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BW_OR
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- BW_XOR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BW_XOR
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- CASE
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$i
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,0
-
-
- 81
- CASE
- ~1
- !0,0
-
-
- 2
- JMPZ
-
- ~1,->6
-
-
- 93
- ECHO
-
- 'i%3D0'
-
-
- 104
- BRK
-
- 1
-
-
- 115
- JMP
-
- ->8
-
-
- 6
- CASE
- ~1
- !0,1
-
-
- 7
- JMPZ
-
- ~1,->11
-
-
- 128
- ECHO
-
- 'i%3D1'
-
-
- 139
- BRK
-
- 1
-
-
- 1410
- JMP
-
- ->13
-
-
- 11
- CASE
- ~1
- !0,2
-
-
- 12
- JMPZ
-
- ~1,->16
-
-
- 1513
- ECHO
-
- 'i%3D2'
-
-
- 1614
- BRK
-
- 1
-
-
- 1715
- JMP
-
- ->16
-
-
- 1816
- RETURN
-
- 1
-
-
-
-
-
-
-
- CAST
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- CAST
- ~0
- 1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- CATCH
-
- PHP code
-
-getMessage(), "\n";
-}
-
-// Continue execution
-echo 'Hello World';
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$error, !1=$e
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- ASSIGN
-
- !0,'Always+throw+this+error'
-
-
- 81
- ZEND_FETCH_CLASS
- :1
- 'Exception'
-
-
- 2
- NEW
- $2
- :1
-
-
- 3
- SEND_VAR
-
- !0
-
-
- 4
- DO_FCALL_BY_NAME
- 1
-
-
-
- 5
- ZEND_THROW
- 0
- $2
-
-
- 116
- ECHO
-
- 'Never+executed'
-
-
- 137
- JMP
-
- ->15
-
-
- 8
- ZEND_FETCH_CLASS
- :4
- 'Exception'
-
-
- 9
- ZEND_CATCH
- 15
- $4,!1
-
-
- 1410
- ECHO
-
- 'Caught+exception%3A+'
-
-
- 11
- ZEND_INIT_METHOD_CALL
-
- !1,'getMessage'
-
-
- 12
- DO_FCALL_BY_NAME
- 0
-
-
-
- 13
- ECHO
-
- $6
-
-
- 14
- ECHO
-
- '%0A'
-
-
- 1815
- ECHO
-
- 'Hello+World'
-
-
- 1916
- RETURN
-
- 1
-
-
-
-
-
-
-
- CLONE
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj, !1=$copy
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ZEND_CLONE
- $4
- !0
-
-
- 5
- ASSIGN
-
- !1,$4
-
-
- 86
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- CONCAT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- CONCAT
- ~0
- 'hello','world'
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- DECLARE_CLASS
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 111
- RETURN
-
- 1
-
-
-
-
- Function name: methodA
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 80
- ECHO
-
- 'hello+world'
-
-
- 91
- RETURN
-
- null
-
-
-
-
-
-
-
- DECLARE_FUNCTION
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 101
- RETURN
-
- 1
-
-
-
-
- Function name: funcA
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 80
- RETURN
-
- null
-
-
-
-
-
-
-
- DECLARE_INHERITED_CLASS
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$b
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- JMPZ
-
- !0,->5
-
-
- 71
- ZEND_DECLARE_CLASS
- $0
- '%00foo%2Fmnt%2Fworkspace%2Fws_phpscripts%2FPHPopcodes%2Fphpsamples%2FDECLARE_INHERITED_CLASS.php0xb7be503b','foo'
-
-
- 142
- ZEND_FETCH_CLASS
- :1
- 'Foo'
-
-
- 3
- ZEND_DECLARE_INHERITED_CLASS
- $2
- '%00bar%2Fmnt%2Fworkspace%2Fws_phpscripts%2FPHPopcodes%2Fphpsamples%2FDECLARE_INHERITED_CLASS.php0xb7be50bc','bar'
-
-
- 194
- JMP
-
- ->5
-
-
- 205
- RETURN
-
- 1
-
-
-
-
- Function name: staticValue
- Compiled variables: !0=$my_static
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 100
- ZEND_FETCH_CLASS
-
-
-
-
- 1
- FETCH_Rstaticmember
- $1
- 'my_static'
-
-
- 2
- RETURN
-
- $1
-
-
- 113
- RETURN
-
- null
-
-
-
-
- Function name: fooStatic
- Compiled variables: !0=$my_static
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 160
- ZEND_FETCH_CLASS
- :0
-
-
-
- 1
- FETCH_Rstaticmember
- $1
- 'my_static'
-
-
- 2
- ECHO
-
- $1
-
-
- 173
- RETURN
-
- null
-
-
-
-
-
-
-
- DIV
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- DIV
- ~0
- 6,3
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- DO_FCALL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- DO_FCALL
- 0
- 'phpinfo'
-
-
- 1
- ASSIGN
-
- !0,$0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- DO_FCALL_BY_NAME
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,'phpinfo'
-
-
- 71
- INIT_FCALL_BY_NAME
-
- !0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !1,$1
-
-
- 84
- RETURN
-
- 1
-
-
-
-
-
-
-
- ECHO
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ECHO
-
- 'hello+world'
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- END_SILENCE
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$my_file, !1=$php_errormsg
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BEGIN_SILENCE
- ~0
-
-
-
- 1
- SEND_VAL
-
- 'non_existent_file'
-
-
- 2
- DO_FCALL
- 1
- 'file'
-
-
- 3
- END_SILENCE
-
- ~0
-
-
- 4
- ASSIGN
- $2
- !0,$1
-
-
- 5
- JMPNZ_EX
- ~3
- $2,->11
-
-
- 76
- ADD_STRING
- ~4
- 'error%3A%27'
-
-
- 7
- ADD_VAR
- ~4
- ~4,!1
-
-
- 8
- ADD_CHAR
- ~4
- ~4,39
-
-
- 9
- EXIT
-
- ~4
-
-
- 10
- BOOL
- ~3
- true
-
-
- 11
- FREE
-
- ~3
-
-
- 812
- RETURN
-
- 1
-
-
-
-
-
-
-
- EXIT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- EXIT
-
- 'foobar'
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
-
-
-
-
- FETCH_CLASS
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_CONSTANT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- SEND_VAL
-
- 'FOO'
-
-
- 1
- SEND_VAL
-
- 'something'
-
-
- 2
- DO_FCALL
- 2
- 'define'
-
-
- 73
- FETCH_CONSTANT
- ~1
- 'FOO'
-
-
- 4
- ECHO
-
- ~1
-
-
- 85
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- FETCH_DIM_FUNC_ARG
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$z
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- NOP
-
-
-
-
- 121
- INIT_ARRAY
- ~0
- 0
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 1
-
-
- 3
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 4
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 5
- ADD_ARRAY_ELEMENT
- ~0
- 4
-
-
- 6
- ADD_ARRAY_ELEMENT
- ~0
- 5
-
-
- 7
- ASSIGN
-
- !0,~0
-
-
- 138
- ASSIGN
-
- !1,'foo'
-
-
- 159
- INIT_FCALL_BY_NAME
-
- !1
-
-
- 10
- FETCH_DIM_FUNC_ARG
- $3
- !0,0
-
-
- 11
- SEND_VAR
-
- $3
-
-
- 12
- DO_FCALL_BY_NAME
- 1
-
-
-
- 1713
- RETURN
-
- 1
-
-
-
-
- Function name: foo
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- RECV
-
- 1
-
-
- 91
- PRINT
- ~0
- !0
-
-
- 2
- FREE
-
- ~0
-
-
- 103
- RETURN
-
- null
-
-
-
-
-
-
-
-
- FETCH_DIM_R
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- ASSIGN
-
- !1,'x'
-
-
- 85
- FETCH_DIM_R
- $3
- !1,0
-
-
- 6
- FETCH_Rlocal
- $4
- $3
-
-
- 7
- ECHO
-
- $4
-
-
- 98
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_DIM_RW
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- ASSIGN
-
- !1,'x'
-
-
- 85
- FETCH_DIM_R
- $3
- !1,0
-
-
- 6
- FETCH_RWlocal
- $4
- $3
-
-
- 7
- POST_INC
- ~5
- $4
-
-
- 8
- FREE
-
- ~5
-
-
- 99
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_DIM_TMP_VAR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 'X'
-
-
- 1
- FETCH_DIM_TMP_VAR
- $1
- ~0,0
-
-
- 2
- ASSIGN
-
- !0,$1
-
-
- 3
- FREE
-
- ~0
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- FETCH_DIM_W
-
- PHP code
-
- 0){
- $a = 0;
-}
-/*$input =array(1,2,3);
-while (list($var,) = @each($input)){
- unset($$var);
-}*/
-/*$a = array(1,2,3);
-$x = 'a';
-$$x[0] = 1;*/
-
-/*while ($b = each($a)) {
- print $b;
-}*/
-
-
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- IS_SMALLER
- ~1
- 0,!0
-
-
- 2
- JMPZ
-
- ~1,->5
-
-
- 83
- ASSIGN
-
- !0,0
-
-
- 94
- JMP
-
- ->1
-
-
- 235
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_FUNC_ARG
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$y, !2=$z
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 101
- ASSIGN
-
- !0,1
-
-
- 112
- ASSIGN
-
- !1,'x'
-
-
- 123
- ASSIGN
-
- !2,'foo'
-
-
- 144
- INIT_FCALL_BY_NAME
-
- !2
-
-
- 5
- FETCH_FUNC_ARGlocal
- $3
- !1
-
-
- 6
- SEND_VAR
-
- $3
-
-
- 7
- DO_FCALL_BY_NAME
- 1
-
-
-
- 168
- RETURN
-
- 1
-
-
-
-
- Function name: foo
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RECV
-
- 1
-
-
- 81
- RETURN
-
- null
-
-
-
-
-
-
-
- FETCH_IS
-
- PHP code
-
-prop->prop);
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- FETCH_IS
- $0
- '_SESSION'
-
-
- 1
- ZEND_ISSET_ISEMPTY_DIM_OBJ
- 1~1
- $0,'userid'
-
-
- 2
- ECHO
-
- ~1
-
-
- 73
- FETCH_IS
- $2
- '_SESSION'
-
-
- 4
- FETCH_DIM_IS
- $3
- $2,'userid'
-
-
- 5
- ZEND_ISSET_ISEMPTY_DIM_OBJ
- 1~4
- $3,1
-
-
- 6
- ECHO
-
- ~4
-
-
- 87
- FETCH_IS
- $5
- '_SESSION'
-
-
- 8
- FETCH_OBJ_IS
- $6
- $5,'prop'
-
-
- 9
- ZEND_ISSET_ISEMPTY_PROP_OBJ
- ~7
- $6,'prop'
-
-
- 10
- ECHO
-
- ~7
-
-
- 911
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_OBJ_FUNC_ARG
-
- PHP code
-
-num;
-$z($obj->num);
-
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$z, !1=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INCLUDE_OR_EVAL
-
- '.%2FclassA.php',INCLUDE
-
-
- 81
- NOP
-
-
-
-
- 132
- ASSIGN
-
- !0,'foo'
-
-
- 153
- ZEND_FETCH_CLASS
- :2
- 'A'
-
-
- 4
- NEW
- $3
- :2
-
-
- 5
- DO_FCALL_BY_NAME
- 0
-
-
-
- 6
- ASSIGN
-
- !1,$3
-
-
- 167
- FETCH_OBJ_R
- $6
- !1,'num'
-
-
- 8
- PRINT
- ~7
- $6
-
-
- 9
- FREE
-
- ~7
-
-
- 1710
- INIT_FCALL_BY_NAME
-
- !0
-
-
- 11
- FETCH_OBJ_FUNC_ARG
- $8
- !1,'num'
-
-
- 12
- SEND_VAR
-
- $8
-
-
- 13
- DO_FCALL_BY_NAME
- 1
-
-
-
- 1914
- RETURN
-
- 1
-
-
-
-
- Function name: foo
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 80
- RECV
-
- 1
-
-
- 101
- PRINT
- ~0
- !0
-
-
- 2
- FREE
-
- ~0
-
-
- 113
- RETURN
-
- null
-
-
-
-
- Function name: foo
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 80
- RECV
-
- 1
-
-
- 101
- PRINT
- ~0
- !0
-
-
- 2
- FREE
-
- ~0
-
-
- 113
- RETURN
-
- null
-
-
-
-
-
-
-
-
- FETCH_OBJ_R
-
- PHP code
-
-num;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ASSIGN
-
- !1,'x'
-
-
- 85
- FETCH_Rlocal
- $5
- !1
-
-
- 6
- FETCH_OBJ_R
- $6
- $5,'num'
-
-
- 7
- ECHO
-
- $6
-
-
- 98
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_OBJ_RW
-
- PHP code
-
-num++;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ASSIGN
-
- !1,'x'
-
-
- 85
- FETCH_RWlocal
- $5
- !1
-
-
- 6
- ZEND_POST_INC_OBJ
- ~7
- $5,'num'
-
-
- 7
- FREE
-
- ~7
-
-
- 98
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- FETCH_OBJ_W
-
- PHP code
-
-num = 1;;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ASSIGN
-
- !1,'x'
-
-
- 85
- FETCH_Wlocal
- $5
- !1
-
-
- 6
- ZEND_ASSIGN_OBJ
-
- $5,'num'
-
-
- 7
- ZEND_OP_DATA
-
- 1
-
-
- 98
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_R
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- ASSIGN
-
- !1,'x'
-
-
- 82
- FETCH_Rlocal
- $2
- !1
-
-
- 3
- ECHO
-
- $2
-
-
- 94
- RETURN
-
- 1
-
-
-
-
-
-
-
- FETCH_RW
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- ASSIGN
-
- !1,'x'
-
-
- 82
- FETCH_RWlocal
- $2
- !1
-
-
- 3
- POST_INC
- ~3
- $2
-
-
- 4
- FREE
-
- ~3
-
-
- 95
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- FETCH_W
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- ASSIGN
-
- !1,'x'
-
-
- 82
- FETCH_Wlocal
- $2
- !1
-
-
- 3
- ASSIGN
-
- $2,2
-
-
- 94
- RETURN
-
- 1
-
-
-
-
-
-
-
- FE_FETCH
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a, !1=$num
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- FE_RESET
- $2
- !0,->11
-
-
- 5
- FE_FETCH
- $3
- $2,->11
-
-
- 6
- ZEND_OP_DATA
-
-
-
-
- 7
- ASSIGN
-
- !1,$3
-
-
- 88
- PRINT
- ~5
- !1
-
-
- 9
- FREE
-
- ~5
-
-
- 910
- JMP
-
- ->5
-
-
- 11
- SWITCH_FREE
-
- $2
-
-
- 1012
- RETURN
-
- 1
-
-
-
-
-
-
-
- FE_RESET
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a, !1=$num
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- FE_RESET
- $2
- !0,->11
-
-
- 5
- FE_FETCH
- $3
- $2,->11
-
-
- 6
- ZEND_OP_DATA
-
-
-
-
- 7
- ASSIGN
-
- !1,$3
-
-
- 88
- PRINT
- ~5
- !1
-
-
- 9
- FREE
-
- ~5
-
-
- 910
- JMP
-
- ->5
-
-
- 11
- SWITCH_FREE
-
- $2
-
-
- 1012
- RETURN
-
- 1
-
-
-
-
-
-
-
- FREE
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- PRINT
- ~0
- 'Hello+World'
-
-
- 1
- FREE
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- HANDLE_EXCEPTION
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RETURN
-
- 1
-
-
-
-
-
-
-
- INCLUDE_OR_EVAL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INCLUDE_OR_EVAL
-
- 'test.php',INCLUDE
-
-
- 71
- INCLUDE_OR_EVAL
-
- 'test.php',EVAL
-
-
- 82
- RETURN
-
- 1
-
-
-
-
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 20
- DO_FCALL
- 0
- 'phpinfo'
-
-
- 31
- RETURN
-
- 1
-
-
-
-
-
-
-
- INIT_ARRAY
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- SEND_VAR
-
- !0
-
-
- 5
- DO_FCALL
- 1
- 'print_r'
-
-
- 86
- RETURN
-
- 1
-
-
-
-
-
-
-
- INIT_FCALL_BY_NAME
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,'phpinfo'
-
-
- 71
- INIT_FCALL_BY_NAME
-
- !0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !1,$1
-
-
- 84
- RETURN
-
- 1
-
-
-
-
-
-
-
- INIT_METHOD_CALL
-
- PHP code
-
-incrementNum();
-
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 131
- ZEND_FETCH_CLASS
- :1
- 'A'
-
-
- 2
- NEW
- $2
- :1
-
-
- 3
- DO_FCALL_BY_NAME
- 0
-
-
-
- 4
- ASSIGN
-
- !0,$2
-
-
- 145
- ZEND_INIT_METHOD_CALL
-
- !0,'incrementNum'
-
-
- 6
- DO_FCALL_BY_NAME
- 0
-
-
-
- 167
- RETURN
-
- 1
-
-
-
-
- Function name: incrementNum
- Compiled variables: !0=$num
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 90
- POST_INC
- ~0
- !0
-
-
- 1
- FREE
-
- ~0
-
-
- 102
- RETURN
-
- null
-
-
-
-
-
-
-
- INIT_STATIC_METHOD_CALL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 121
- ZEND_INIT_STATIC_METHOD_CALL
-
- 'Foo','aStaticMethod'
-
-
- 2
- ZEND_OP_DATA
-
- 'foo%3A%3Aastaticmethod'
-
-
- 3
- DO_FCALL_BY_NAME
- 0
-
-
-
- 134
- RETURN
-
- 1
-
-
-
-
- Function name: aStaticMethod
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 80
- ECHO
-
- 'hello+world%0A'
-
-
- 91
- RETURN
-
- null
-
-
-
-
-
-
-
- INIT_STRING
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ADD_STRING
- ~0
- 'hello'
-
-
- 1
- ADD_VAR
- ~0
- ~0,!0
-
-
- 2
- ADD_STRING
- ~0
- ~0,'+world'
-
-
- 3
- ECHO
-
- ~0
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- INSTANCEOF
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 84
- ZEND_FETCH_CLASS
- :4
- 'A'
-
-
- 5
- ZEND_INSTANCEOF
- ~5
- !0,$4
-
-
- 6
- JMPZ
-
- ~5,->9
-
-
- 97
- ECHO
-
- 'A'
-
-
- 108
- JMP
-
- ->9
-
-
- 119
- RETURN
-
- 1
-
-
-
-
-
-
-
- ISSET_ISEMPTY_DIM_OBJ
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_ISSET_ISEMPTY_DIM_OBJ
- 1~0
- !0,0
-
-
- 1
- JMPZ
-
- ~0,->4
-
-
- 2
- RETURN
-
- 0
-
-
- 3
- JMP
-
- ->4
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- ISSET_ISEMPTY_PROP_OBJ
-
- PHP code
-
-num)) return 0;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ZEND_ISSET_ISEMPTY_PROP_OBJ
- ~4
- !0,'num'
-
-
- 5
- JMPZ
-
- ~4,->8
-
-
- 6
- RETURN
-
- 0
-
-
- 7
- JMP
-
- ->8
-
-
- 88
- RETURN
-
- 1
-
-
-
-
-
-
-
- ISSET_ISEMPTY_VAR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_ISSET_ISEMPTY_VAR
- 5~0
- !0
-
-
- 1
- JMPZ
-
- ~0,->4
-
-
- 2
- RETURN
-
- 0
-
-
- 3
- JMP
-
- ->4
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- IS_EQUAL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_EQUAL
- ~0
- 1,1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- IS_EQUAL
- ~1
- 1,'c'
-
-
- 3
- ECHO
-
- ~1
-
-
- 84
- RETURN
-
- 1
-
-
-
-
-
-
-
- IS_IDENTICAL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_IDENTICAL
- ~0
- 1,1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- IS_IDENTICAL
- ~1
- 1,'a'
-
-
- 3
- ECHO
-
- ~1
-
-
- 84
- RETURN
-
- 1
-
-
-
-
-
-
-
- IS_NOT_EQUAL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_NOT_EQUAL
- ~0
- 1,1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- IS_NOT_IDENTICAL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_NOT_IDENTICAL
- ~0
- 1,1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- IS_SMALLER
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_SMALLER
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- IS_SMALLER_OR_EQUAL
-
- PHP code
-
-= 2);
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_SMALLER_OR_EQUAL
- ~0
- 2,1
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- JMPNZ
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$i
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,0
-
-
- 1
- IS_SMALLER
- ~1
- !0,3
-
-
- 2
- JMPZNZ
- 6
- ~1,->8
-
-
- 3
- POST_INC
- ~2
- !0
-
-
- 4
- FREE
-
- ~2
-
-
- 5
- JMP
-
- ->1
-
-
- 76
- ECHO
-
- 'hi'
-
-
- 87
- JMP
-
- ->3
-
-
- 98
- RETURN
-
- 1
-
-
-
-
-
-
-
- JMPNZ_EX
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BW_XOR
- ~0
- 1,2
-
-
- 1
- JMPZ
-
- ~0,->4
-
-
- 2
- RETURN
-
- null
-
-
- 3
- JMP
-
- ->4
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- JMPZ
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- IS_NOT_EQUAL
- ~0
- !0,0
-
-
- 1
- JMPZ
-
- ~0,->4
-
-
- 2
- ECHO
-
- 'foo'
-
-
- 3
- JMP
-
- ->4
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- JMPZNZ
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$i
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,0
-
-
- 1
- IS_SMALLER
- ~1
- !0,3
-
-
- 2
- JMPZNZ
- 6
- ~1,->8
-
-
- 3
- POST_INC
- ~2
- !0
-
-
- 4
- FREE
-
- ~2
-
-
- 5
- JMP
-
- ->1
-
-
- 76
- ECHO
-
- 'hi'
-
-
- 87
- JMP
-
- ->3
-
-
- 98
- RETURN
-
- 1
-
-
-
-
-
-
-
- JMPZ_EX
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- RETURN
-
- 1
-
-
-
-
-
-
-
- MOD
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- MOD
- ~0
- 6,3
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- MUL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- MUL
- ~0
- 2,3
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- NEW
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- RETURN
-
- 1
-
-
-
-
-
-
-
- INIT_NS_FCALL_BY_NAME
-
-
-
- NOP
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 71
- RETURN
-
- 1
-
-
-
-
- Function name: A
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RETURN
-
- null
-
-
-
-
-
-
-
- POST_DEC
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- POST_DEC
- ~0
- !0
-
-
- 1
- FREE
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- POST_DEC_OBJ
-
- PHP code
-
-num--;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ZEND_POST_DEC_OBJ
- ~5
- !0,'num'
-
-
- 5
- FREE
-
- ~5
-
-
- 86
- RETURN
-
- 1
-
-
-
-
-
-
-
- POST_INC
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- POST_INC
- ~0
- !0
-
-
- 1
- FREE
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- POST_INC_OBJ
-
- PHP code
-
-num++;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ZEND_POST_INC_OBJ
- ~5
- !0,'num'
-
-
- 5
- FREE
-
- ~5
-
-
- 86
- RETURN
-
- 1
-
-
-
-
-
-
-
- PRE_DEC
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- PRE_DEC
-
- !0
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- PRE_DEC_OBJ
-
- PHP code
-
-num;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ZEND_PRE_DEC_OBJ
-
- !0,'num'
-
-
- 85
- RETURN
-
- 1
-
-
-
-
-
-
-
- PRE_INC
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- PRE_INC
-
- !0
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- PRE_INC_OBJ
-
- PHP code
-
-num;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- ZEND_PRE_INC_OBJ
-
- !0,'num'
-
-
- 85
- RETURN
-
- 1
-
-
-
-
-
-
-
- PRINT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- PRINT
- ~0
- 'Hello+World'
-
-
- 1
- FREE
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- QM_ASSIGN
-
- PHP code
-
- 1 ? 10: 11;
-}
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 101
- NOP
-
-
-
-
- 142
- RETURN
-
- 1
-
-
-
-
- Function name: A
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- JMPZ
-
- 1,->3
-
-
- 1
- QM_ASSIGN
- ~0
- 2
-
-
- 2
- JMP
-
- ->4
-
-
- 3
- QM_ASSIGN
- ~0
- 3
-
-
- 4
- ECHO
-
- ~0
-
-
- 85
- RETURN
-
- null
-
-
-
-
- Function name: B
- Compiled variables: !0=$b, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 110
- ASSIGN
-
- !0,0
-
-
- 121
- IS_SMALLER
- ~1
- 1,!0
-
-
- 2
- JMPZ
-
- ~1,->5
-
-
- 3
- QM_ASSIGN
- ~2
- 10
-
-
- 4
- JMP
-
- ->6
-
-
- 5
- QM_ASSIGN
- ~2
- 11
-
-
- 6
- ASSIGN
-
- !1,~2
-
-
- 137
- RETURN
-
- null
-
-
-
-
-
-
-
- RAISE_ABSTRACT_ERROR
-
- PHP code
-
-show();
-
-$t = new fail();
-$t->show();
-
-echo "Done\n"; // shouldn't be displayed
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$t2, !1=$t
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- NOP
-
-
-
-
- 111
- NOP
-
-
-
-
- 2
- NOP
-
-
-
-
- 173
- ZEND_FETCH_CLASS
- :3
- 'pass'
-
-
- 4
- NEW
- $4
- :3
-
-
- 5
- DO_FCALL_BY_NAME
- 0
-
-
-
- 6
- ASSIGN
-
- !0,$4
-
-
- 187
- ZEND_INIT_METHOD_CALL
-
- !0,'show'
-
-
- 8
- DO_FCALL_BY_NAME
- 0
-
-
-
- 209
- ZEND_FETCH_CLASS
- :9
- 'fail'
-
-
- 10
- NEW
- $10
- :9
-
-
- 11
- DO_FCALL_BY_NAME
- 0
-
-
-
- 12
- ASSIGN
-
- !1,$10
-
-
- 2113
- ZEND_INIT_METHOD_CALL
-
- !1,'show'
-
-
- 14
- DO_FCALL_BY_NAME
- 0
-
-
-
- 2315
- ECHO
-
- 'Done%0A'
-
-
- 2416
- RETURN
-
- 1
-
-
-
-
- Function name: show
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 80
- ZEND_RAISE_ABSTRACT_ERROR
-
-
-
-
- 1
- RETURN
-
- null
-
-
-
-
- Function name: show
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 130
- ECHO
-
- 'Call+to+function+show%28%29%0A'
-
-
- 141
- RETURN
-
- null
-
-
-
-
-
-
-
-
- RECV
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 71
- RETURN
-
- 1
-
-
-
-
- Function name: hello
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RECV
-
- 1
-
-
- 1
- RETURN
-
- null
-
-
-
-
-
-
-
- RECV_INIT
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 71
- RETURN
-
- 1
-
-
-
-
- Function name: hello
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RECV_INIT
-
- 1,5
-
-
- 1
- RETURN
-
- null
-
-
-
-
-
-
-
- RETURN
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RETURN
-
- 1
-
-
- 71
- RETURN
-
- 1
-
-
-
-
-
-
-
- SEND_REF
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- BEGIN_SILENCE
- ~0
-
-
-
- 1
- FETCH_Wlocal
- $1
- 'input'
-
-
- 2
- SEND_REF
-
- $1
-
-
- 3
- DO_FCALL
- 1
- 'each'
-
-
- 4
- END_SILENCE
-
- ~0
-
-
- 75
- RETURN
-
- 1
-
-
-
-
-
-
-
- SEND_VAL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- NOP
-
-
-
-
- 101
- SEND_VAL
-
- 'HELLO'
-
-
- 2
- DO_FCALL
- 1
- 'funca'
-
-
- 123
- SEND_VAL
-
- 'IN_PHPBB'
-
-
- 4
- DO_FCALL
- 1
- 'defined'
-
-
- 135
- RETURN
-
- 1
-
-
-
-
- Function name: funcA
- Compiled variables: !0=$msg
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- RECV
-
- 1
-
-
- 71
- PRINT
- ~0
- !0
-
-
- 2
- FREE
-
- ~0
-
-
- 83
- RETURN
-
- null
-
-
-
-
-
-
-
- SEND_VAR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- SEND_VAR
-
- !0
-
-
- 5
- DO_FCALL
- 1
- 'is_array'
-
-
- 6
- JMPZ
-
- $2,->9
-
-
- 7
- RETURN
-
- 0
-
-
- 8
- JMP
-
- ->9
-
-
- 89
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- SL
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- SL
- ~0
- 8,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- SR
-
- PHP code
-
-> 2;
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- SR
- ~0
- 8,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- SUB
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- SUB
- ~0
- 1,2
-
-
- 1
- ECHO
-
- ~0
-
-
- 72
- RETURN
-
- 1
-
-
-
-
-
-
-
- SWITCH_FREE
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a, !1=$num
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- FE_RESET
- $2
- !0,->11
-
-
- 5
- FE_FETCH
- $3
- $2,->11
-
-
- 6
- ZEND_OP_DATA
-
-
-
-
- 7
- ASSIGN
-
- !1,$3
-
-
- 88
- PRINT
- ~5
- !1
-
-
- 9
- FREE
-
- ~5
-
-
- 910
- JMP
-
- ->5
-
-
- 11
- SWITCH_FREE
-
- $2
-
-
- 1012
- RETURN
-
- 1
-
-
-
-
-
-
-
- THROW
-
- PHP code
-
-getMessage(), "\n";
-}
-
-// Continue execution
-echo 'Hello World';
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$error, !1=$e
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- ASSIGN
-
- !0,'Always+throw+this+error'
-
-
- 81
- ZEND_FETCH_CLASS
- :1
- 'Exception'
-
-
- 2
- NEW
- $2
- :1
-
-
- 3
- SEND_VAR
-
- !0
-
-
- 4
- DO_FCALL_BY_NAME
- 1
-
-
-
- 5
- ZEND_THROW
- 0
- $2
-
-
- 116
- ECHO
-
- 'Never+executed'
-
-
- 137
- JMP
-
- ->15
-
-
- 8
- ZEND_FETCH_CLASS
- :4
- 'Exception'
-
-
- 9
- ZEND_CATCH
- 15
- $4,!1
-
-
- 1410
- ECHO
-
- 'Caught+exception%3A+'
-
-
- 11
- ZEND_INIT_METHOD_CALL
-
- !1,'getMessage'
-
-
- 12
- DO_FCALL_BY_NAME
- 0
-
-
-
- 13
- ECHO
-
- $6
-
-
- 14
- ECHO
-
- '%0A'
-
-
- 1815
- ECHO
-
- 'Hello+World'
-
-
- 1916
- RETURN
-
- 1
-
-
-
-
-
-
-
- TICKS
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 70
- NOP
-
-
-
-
- 131
- SEND_VAL
-
- 'profile'
-
-
- 2
- DO_FCALL
- 1
- 'register_tick_function'
-
-
- 163
- DO_FCALL
- 0
- 'profile'
-
-
- 204
- ASSIGN
-
- !0,0
-
-
- 5
- IS_SMALLER
- ~3
- !0,10
-
-
- 6
- JMPZNZ
- 9
- ~3,->13
-
-
- 7
- PRE_INC
-
- !0
-
-
- 8
- JMP
-
- ->5
-
-
- 219
- ECHO
-
- 'hello+world%0A'
-
-
- 10
- TICKS
-
- 2
-
-
- 2211
- TICKS
-
- 2
-
-
- 12
- JMP
-
- ->7
-
-
- 13
- TICKS
-
- 2
-
-
- 2314
- TICKS
-
- 2
-
-
- 2415
- RETURN
-
- 1
-
-
-
-
- Function name: profile
- Compiled variables: none
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 90
- ECHO
-
- 'profile+function+is+called%0A'
-
-
- 101
- RETURN
-
- null
-
-
-
-
-
-
-
- UNSET_DIM
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- INIT_ARRAY
- ~0
- 1
-
-
- 1
- ADD_ARRAY_ELEMENT
- ~0
- 2
-
-
- 2
- ADD_ARRAY_ELEMENT
- ~0
- 3
-
-
- 3
- ASSIGN
-
- !0,~0
-
-
- 74
- UNSET_DIM
- $2
- !0,0
-
-
- 85
- RETURN
-
- 1
-
-
-
-
-
-
-
- UNSET_OBJ
-
- PHP code
-
-num);
-?>
-]]>
-
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$obj
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ZEND_FETCH_CLASS
- :0
- 'A'
-
-
- 1
- NEW
- $1
- :0
-
-
- 2
- DO_FCALL_BY_NAME
- 0
-
-
-
- 3
- ASSIGN
-
- !0,$1
-
-
- 74
- UNSET_OBJ
- $4
- !0,'num'
-
-
- 85
- RETURN
-
- 1
-
-
-
-
-
-
-
- UNSET_VAR
-
-
- PHP opcodes
- Function name: (null)
- Compiled variables: !0=$x, !1=$a
-
-
-
-
- line#op
- fetchextreturn
- operands
-
-
-
-
- 60
- ASSIGN
-
- !0,1
-
-
- 71
- ASSIGN
-
- !1,'x'
-
-
- 82
- UNSET_VAR
- $2
- !1
-
-
- 93
- RETURN
-
- 1
-
-
-
-
-
-
-
-
- VERIFY_ABSTRACT_CLASS
-
-
-
-
diff --git a/internals2/opcodes/add-array-element.xml b/internals2/opcodes/add-array-element.xml
new file mode 100644
index 0000000000..68cc37bdf3
--- /dev/null
+++ b/internals2/opcodes/add-array-element.xml
@@ -0,0 +1,80 @@
+
+
+
+ ADD_ARRAY_ELEMENT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ SEND_VAR
+
+ !0
+
+
+ 5
+ DO_FCALL
+ 1
+ 'print_r'
+
+
+ 86
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/add-char.xml b/internals2/opcodes/add-char.xml
new file mode 100644
index 0000000000..85412bbdfc
--- /dev/null
+++ b/internals2/opcodes/add-char.xml
@@ -0,0 +1,49 @@
+
+
+
+ ADD_CHAR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ECHO
+
+ 'hello%5C+world'
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/add-interface.xml b/internals2/opcodes/add-interface.xml
new file mode 100644
index 0000000000..5cd79d20e7
--- /dev/null
+++ b/internals2/opcodes/add-interface.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/add-string.xml b/internals2/opcodes/add-string.xml
new file mode 100644
index 0000000000..5982831302
--- /dev/null
+++ b/internals2/opcodes/add-string.xml
@@ -0,0 +1,67 @@
+
+
+
+ ADD_STRING
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ADD_STRING
+ ~0
+ 'hello'
+
+
+ 1
+ ADD_VAR
+ ~0
+ ~0,!0
+
+
+ 2
+ ADD_STRING
+ ~0
+ ~0,'+world'
+
+
+ 3
+ ECHO
+
+ ~0
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/add-var.xml b/internals2/opcodes/add-var.xml
new file mode 100644
index 0000000000..a50c0070a5
--- /dev/null
+++ b/internals2/opcodes/add-var.xml
@@ -0,0 +1,67 @@
+
+
+
+ ADD_VAR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ADD_STRING
+ ~0
+ 'hello'
+
+
+ 1
+ ADD_VAR
+ ~0
+ ~0,!0
+
+
+ 2
+ ADD_STRING
+ ~0
+ ~0,'+world'
+
+
+ 3
+ ECHO
+
+ ~0
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/add.xml b/internals2/opcodes/add.xml
new file mode 100644
index 0000000000..a7377a1d76
--- /dev/null
+++ b/internals2/opcodes/add.xml
@@ -0,0 +1,55 @@
+
+
+
+ ADD
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ADD
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-add.xml b/internals2/opcodes/assign-add.xml
new file mode 100644
index 0000000000..0447a590c4
--- /dev/null
+++ b/internals2/opcodes/assign-add.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_ADD
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_ADD
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-bw-and.xml b/internals2/opcodes/assign-bw-and.xml
new file mode 100644
index 0000000000..ccff095f07
--- /dev/null
+++ b/internals2/opcodes/assign-bw-and.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_BW_AND
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_BW_AND
+
+ !0,64
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-bw-or.xml b/internals2/opcodes/assign-bw-or.xml
new file mode 100644
index 0000000000..bbfeb65519
--- /dev/null
+++ b/internals2/opcodes/assign-bw-or.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_BW_OR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_BW_OR
+
+ !0,64
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-bw-xor.xml b/internals2/opcodes/assign-bw-xor.xml
new file mode 100644
index 0000000000..8840d8ee6e
--- /dev/null
+++ b/internals2/opcodes/assign-bw-xor.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_BW_XOR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_BW_XOR
+
+ !0,64
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-concat.xml b/internals2/opcodes/assign-concat.xml
new file mode 100644
index 0000000000..1e5d3a2ccc
--- /dev/null
+++ b/internals2/opcodes/assign-concat.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_CONCAT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_CONCAT
+
+ !0,'z'
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-dim.xml b/internals2/opcodes/assign-dim.xml
new file mode 100644
index 0000000000..9b36408b74
--- /dev/null
+++ b/internals2/opcodes/assign-dim.xml
@@ -0,0 +1,68 @@
+
+
+
+ ASSIGN_DIM
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$b, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ FETCH_DIM_W
+ $1
+ !1,1
+
+
+ 2
+ ZEND_ASSIGN_DIM
+
+ $1,2
+
+
+ 3
+ ZEND_OP_DATA
+
+ !0,$3
+
+
+ 84
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-div.xml b/internals2/opcodes/assign-div.xml
new file mode 100644
index 0000000000..8d6f8962d5
--- /dev/null
+++ b/internals2/opcodes/assign-div.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_DIV
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_DIV
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-mod.xml b/internals2/opcodes/assign-mod.xml
new file mode 100644
index 0000000000..654bf00698
--- /dev/null
+++ b/internals2/opcodes/assign-mod.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_MOD
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_MOD
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-mul.xml b/internals2/opcodes/assign-mul.xml
new file mode 100644
index 0000000000..9dd14608ae
--- /dev/null
+++ b/internals2/opcodes/assign-mul.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_MUL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_MUL
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-obj.xml b/internals2/opcodes/assign-obj.xml
new file mode 100644
index 0000000000..8e360ece0f
--- /dev/null
+++ b/internals2/opcodes/assign-obj.xml
@@ -0,0 +1,55 @@
+
+
+
+ ASSIGN_OBJ
+
+ PHP code
+
+ a = $otherobj;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj, !1=$otherobj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_ASSIGN_OBJ
+
+ !0,'a'
+
+
+ 1
+ ZEND_OP_DATA
+
+ !1
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-ref.xml b/internals2/opcodes/assign-ref.xml
new file mode 100644
index 0000000000..fabb6fa84d
--- /dev/null
+++ b/internals2/opcodes/assign-ref.xml
@@ -0,0 +1,55 @@
+
+
+
+ ASSIGN_REF
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ FETCH_Wgloballock
+ $0
+ 'a'
+
+
+ 1
+ ASSIGN_REF
+
+ !0,$0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-sl.xml b/internals2/opcodes/assign-sl.xml
new file mode 100644
index 0000000000..55f622834f
--- /dev/null
+++ b/internals2/opcodes/assign-sl.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_SL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_SL
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-sr.xml b/internals2/opcodes/assign-sr.xml
new file mode 100644
index 0000000000..b7676e7e2b
--- /dev/null
+++ b/internals2/opcodes/assign-sr.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_SR
+
+ PHP code
+
+ >= 3;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_SR
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign-sub.xml b/internals2/opcodes/assign-sub.xml
new file mode 100644
index 0000000000..3473c2b892
--- /dev/null
+++ b/internals2/opcodes/assign-sub.xml
@@ -0,0 +1,49 @@
+
+
+
+ ASSIGN_SUB
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN_SUB
+
+ !0,3
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/assign.xml b/internals2/opcodes/assign.xml
new file mode 100644
index 0000000000..2c0d17bba2
--- /dev/null
+++ b/internals2/opcodes/assign.xml
@@ -0,0 +1,81 @@
+
+
+
+ ASSIGN
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ ASSIGN
+
+ !0,'a'
+
+
+ 82
+ ZEND_FETCH_CLASS
+ :2
+ 'A'
+
+
+ 3
+ NEW
+ $3
+ :2
+
+
+ 4
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 5
+ ASSIGN
+
+ !0,$3
+
+
+ 96
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/begin-silence.xml b/internals2/opcodes/begin-silence.xml
new file mode 100644
index 0000000000..2e5b3891a6
--- /dev/null
+++ b/internals2/opcodes/begin-silence.xml
@@ -0,0 +1,117 @@
+
+
+
+ BEGIN_SILENCE
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$my_file, !1=$php_errormsg
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ BEGIN_SILENCE
+ ~0
+
+
+
+ 1
+ SEND_VAL
+
+ 'non_existent_file'
+
+
+ 2
+ DO_FCALL
+ 1
+ 'file'
+
+
+ 3
+ END_SILENCE
+
+ ~0
+
+
+ 4
+ ASSIGN
+ $2
+ !0,$1
+
+
+ 5
+ JMPNZ_EX
+ ~3
+ $2,->11
+
+
+ 86
+ ADD_STRING
+ ~4
+ 'error%3A%27'
+
+
+ 7
+ ADD_VAR
+ ~4
+ ~4,!1
+
+
+ 8
+ ADD_CHAR
+ ~4
+ ~4,39
+
+
+ 9
+ EXIT
+
+ ~4
+
+
+ 10
+ BOOL
+ ~3
+ true
+
+
+ 11
+ FREE
+
+ ~3
+
+
+ 912
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bool-not.xml b/internals2/opcodes/bool-not.xml
new file mode 100644
index 0000000000..99548405b6
--- /dev/null
+++ b/internals2/opcodes/bool-not.xml
@@ -0,0 +1,55 @@
+
+
+
+ BOOL_NOT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BOOL_NOT
+ ~0
+ 1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bool-xor.xml b/internals2/opcodes/bool-xor.xml
new file mode 100644
index 0000000000..5c62752ebf
--- /dev/null
+++ b/internals2/opcodes/bool-xor.xml
@@ -0,0 +1,55 @@
+
+
+
+ BOOL_XOR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BOOL_XOR
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bool.xml b/internals2/opcodes/bool.xml
new file mode 100644
index 0000000000..acb25d859d
--- /dev/null
+++ b/internals2/opcodes/bool.xml
@@ -0,0 +1,87 @@
+
+
+
+ BOOL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ JMPNZ_EX
+ ~0
+ 1,->2
+
+
+ 1
+ BOOL
+ ~0
+ 2
+
+
+ 2
+ JMPNZ_EX
+ ~0
+ ~0,->4
+
+
+ 3
+ BOOL
+ ~0
+ 1
+
+
+ 4
+ JMPZ
+
+ ~0,->7
+
+
+ 5
+ ECHO
+
+ 'foo'
+
+
+ 6
+ JMP
+
+ ->7
+
+
+ 97
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/brk.xml b/internals2/opcodes/brk.xml
new file mode 100644
index 0000000000..40f9cf3459
--- /dev/null
+++ b/internals2/opcodes/brk.xml
@@ -0,0 +1,88 @@
+
+
+
+ BRK
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,0
+
+
+ 71
+ JMPZ
+
+ 1,->7
+
+
+ 82
+ IS_EQUAL
+ ~1
+ !0,0
+
+
+ 3
+ JMPZ
+
+ ~1,->6
+
+
+ 4
+ BRK
+
+ 1
+
+
+ 5
+ JMP
+
+ ->6
+
+
+ 96
+ JMP
+
+ ->1
+
+
+ 107
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bw-and.xml b/internals2/opcodes/bw-and.xml
new file mode 100644
index 0000000000..4773ab9108
--- /dev/null
+++ b/internals2/opcodes/bw-and.xml
@@ -0,0 +1,55 @@
+
+
+
+ BW_AND
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BW_AND
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bw-not.xml b/internals2/opcodes/bw-not.xml
new file mode 100644
index 0000000000..74446a1e2e
--- /dev/null
+++ b/internals2/opcodes/bw-not.xml
@@ -0,0 +1,55 @@
+
+
+
+ BW_NOT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BW_NOT
+ ~0
+ 15
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bw-or.xml b/internals2/opcodes/bw-or.xml
new file mode 100644
index 0000000000..2402aa503e
--- /dev/null
+++ b/internals2/opcodes/bw-or.xml
@@ -0,0 +1,55 @@
+
+
+
+ BW_OR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BW_OR
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/bw-xor.xml b/internals2/opcodes/bw-xor.xml
new file mode 100644
index 0000000000..d75fc931f6
--- /dev/null
+++ b/internals2/opcodes/bw-xor.xml
@@ -0,0 +1,55 @@
+
+
+
+ BW_XOR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BW_XOR
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/case.xml b/internals2/opcodes/case.xml
new file mode 100644
index 0000000000..b750d914e0
--- /dev/null
+++ b/internals2/opcodes/case.xml
@@ -0,0 +1,150 @@
+
+
+
+ CASE
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$i
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,0
+
+
+ 81
+ CASE
+ ~1
+ !0,0
+
+
+ 2
+ JMPZ
+
+ ~1,->6
+
+
+ 93
+ ECHO
+
+ 'i%3D0'
+
+
+ 104
+ BRK
+
+ 1
+
+
+ 115
+ JMP
+
+ ->8
+
+
+ 6
+ CASE
+ ~1
+ !0,1
+
+
+ 7
+ JMPZ
+
+ ~1,->11
+
+
+ 128
+ ECHO
+
+ 'i%3D1'
+
+
+ 139
+ BRK
+
+ 1
+
+
+ 1410
+ JMP
+
+ ->13
+
+
+ 11
+ CASE
+ ~1
+ !0,2
+
+
+ 12
+ JMPZ
+
+ ~1,->16
+
+
+ 1513
+ ECHO
+
+ 'i%3D2'
+
+
+ 1614
+ BRK
+
+ 1
+
+
+ 1715
+ JMP
+
+ ->16
+
+
+ 1816
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/cast.xml b/internals2/opcodes/cast.xml
new file mode 100644
index 0000000000..0d07a9f310
--- /dev/null
+++ b/internals2/opcodes/cast.xml
@@ -0,0 +1,55 @@
+
+
+
+ CAST
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ CAST
+ ~0
+ 1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/catch.xml b/internals2/opcodes/catch.xml
new file mode 100644
index 0000000000..89c4a94634
--- /dev/null
+++ b/internals2/opcodes/catch.xml
@@ -0,0 +1,151 @@
+
+
+
+ CATCH
+
+ PHP code
+
+ getMessage(), "\n";
+}
+
+// Continue execution
+echo 'Hello World';
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$error, !1=$e
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ ASSIGN
+
+ !0,'Always+throw+this+error'
+
+
+ 81
+ ZEND_FETCH_CLASS
+ :1
+ 'Exception'
+
+
+ 2
+ NEW
+ $2
+ :1
+
+
+ 3
+ SEND_VAR
+
+ !0
+
+
+ 4
+ DO_FCALL_BY_NAME
+ 1
+
+
+
+ 5
+ ZEND_THROW
+ 0
+ $2
+
+
+ 116
+ ECHO
+
+ 'Never+executed'
+
+
+ 137
+ JMP
+
+ ->15
+
+
+ 8
+ ZEND_FETCH_CLASS
+ :4
+ 'Exception'
+
+
+ 9
+ ZEND_CATCH
+ 15
+ $4,!1
+
+
+ 1410
+ ECHO
+
+ 'Caught+exception%3A+'
+
+
+ 11
+ ZEND_INIT_METHOD_CALL
+
+ !1,'getMessage'
+
+
+ 12
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 13
+ ECHO
+
+ $6
+
+
+ 14
+ ECHO
+
+ '%0A'
+
+
+ 1815
+ ECHO
+
+ 'Hello+World'
+
+
+ 1916
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/clone.xml b/internals2/opcodes/clone.xml
new file mode 100644
index 0000000000..730257ce64
--- /dev/null
+++ b/internals2/opcodes/clone.xml
@@ -0,0 +1,80 @@
+
+
+
+ CLONE
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj, !1=$copy
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ZEND_CLONE
+ $4
+ !0
+
+
+ 5
+ ASSIGN
+
+ !1,$4
+
+
+ 86
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/concat.xml b/internals2/opcodes/concat.xml
new file mode 100644
index 0000000000..e8274ab88e
--- /dev/null
+++ b/internals2/opcodes/concat.xml
@@ -0,0 +1,55 @@
+
+
+
+ CONCAT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ CONCAT
+ ~0
+ 'hello','world'
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/cont.xml b/internals2/opcodes/cont.xml
new file mode 100644
index 0000000000..4186166eda
--- /dev/null
+++ b/internals2/opcodes/cont.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/declare-class.xml b/internals2/opcodes/declare-class.xml
new file mode 100644
index 0000000000..92d34f6530
--- /dev/null
+++ b/internals2/opcodes/declare-class.xml
@@ -0,0 +1,80 @@
+
+
+
+ DECLARE_CLASS
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 111
+ RETURN
+
+ 1
+
+
+
+
+ Function name: methodA
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 80
+ ECHO
+
+ 'hello+world'
+
+
+ 91
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/declare-const.xml b/internals2/opcodes/declare-const.xml
new file mode 100644
index 0000000000..734f080bce
--- /dev/null
+++ b/internals2/opcodes/declare-const.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/declare-function.xml b/internals2/opcodes/declare-function.xml
new file mode 100644
index 0000000000..3b8d0d07f7
--- /dev/null
+++ b/internals2/opcodes/declare-function.xml
@@ -0,0 +1,73 @@
+
+
+
+ DECLARE_FUNCTION
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 101
+ RETURN
+
+ 1
+
+
+
+
+ Function name: funcA
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 80
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/declare-inherited-class-delayed.xml b/internals2/opcodes/declare-inherited-class-delayed.xml
new file mode 100644
index 0000000000..9cf8f6dca3
--- /dev/null
+++ b/internals2/opcodes/declare-inherited-class-delayed.xml
@@ -0,0 +1,18 @@
+
+
+
+ DECLARE_INHERITED_CLASS_DELAYED
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/declare-inherited-class.xml b/internals2/opcodes/declare-inherited-class.xml
new file mode 100644
index 0000000000..37bb27a3cc
--- /dev/null
+++ b/internals2/opcodes/declare-inherited-class.xml
@@ -0,0 +1,164 @@
+
+
+
+ DECLARE_INHERITED_CLASS
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$b
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ JMPZ
+
+ !0,->5
+
+
+ 71
+ ZEND_DECLARE_CLASS
+ $0
+ '%00foo%2Fmnt%2Fworkspace%2Fws_phpscripts%2FPHPopcodes%2Fphpsamples%2FDECLARE_INHERITED_CLASS.php0xb7be503b','foo'
+
+
+ 142
+ ZEND_FETCH_CLASS
+ :1
+ 'Foo'
+
+
+ 3
+ ZEND_DECLARE_INHERITED_CLASS
+ $2
+ '%00bar%2Fmnt%2Fworkspace%2Fws_phpscripts%2FPHPopcodes%2Fphpsamples%2FDECLARE_INHERITED_CLASS.php0xb7be50bc','bar'
+
+
+ 194
+ JMP
+
+ ->5
+
+
+ 205
+ RETURN
+
+ 1
+
+
+
+
+ Function name: staticValue
+ Compiled variables: !0=$my_static
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 100
+ ZEND_FETCH_CLASS
+
+
+
+
+ 1
+ FETCH_Rstaticmember
+ $1
+ 'my_static'
+
+
+ 2
+ RETURN
+
+ $1
+
+
+ 113
+ RETURN
+
+ null
+
+
+
+
+ Function name: fooStatic
+ Compiled variables: !0=$my_static
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 160
+ ZEND_FETCH_CLASS
+ :0
+
+
+
+ 1
+ FETCH_Rstaticmember
+ $1
+ 'my_static'
+
+
+ 2
+ ECHO
+
+ $1
+
+
+ 173
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/div.xml b/internals2/opcodes/div.xml
new file mode 100644
index 0000000000..ee0aff5699
--- /dev/null
+++ b/internals2/opcodes/div.xml
@@ -0,0 +1,55 @@
+
+
+
+ DIV
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ DIV
+ ~0
+ 6,3
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/do-fcall-by-name.xml b/internals2/opcodes/do-fcall-by-name.xml
new file mode 100644
index 0000000000..71aa1c1771
--- /dev/null
+++ b/internals2/opcodes/do-fcall-by-name.xml
@@ -0,0 +1,68 @@
+
+
+
+ DO_FCALL_BY_NAME
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,'phpinfo'
+
+
+ 71
+ INIT_FCALL_BY_NAME
+
+ !0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !1,$1
+
+
+ 84
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/do-fcall.xml b/internals2/opcodes/do-fcall.xml
new file mode 100644
index 0000000000..542482000a
--- /dev/null
+++ b/internals2/opcodes/do-fcall.xml
@@ -0,0 +1,55 @@
+
+
+
+ DO_FCALL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ DO_FCALL
+ 0
+ 'phpinfo'
+
+
+ 1
+ ASSIGN
+
+ !0,$0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/echo.xml b/internals2/opcodes/echo.xml
new file mode 100644
index 0000000000..1e28ac8153
--- /dev/null
+++ b/internals2/opcodes/echo.xml
@@ -0,0 +1,49 @@
+
+
+
+ ECHO
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ECHO
+
+ 'hello+world'
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/end-silence.xml b/internals2/opcodes/end-silence.xml
new file mode 100644
index 0000000000..a59ef5e0f8
--- /dev/null
+++ b/internals2/opcodes/end-silence.xml
@@ -0,0 +1,116 @@
+
+
+
+ END_SILENCE
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$my_file, !1=$php_errormsg
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BEGIN_SILENCE
+ ~0
+
+
+
+ 1
+ SEND_VAL
+
+ 'non_existent_file'
+
+
+ 2
+ DO_FCALL
+ 1
+ 'file'
+
+
+ 3
+ END_SILENCE
+
+ ~0
+
+
+ 4
+ ASSIGN
+ $2
+ !0,$1
+
+
+ 5
+ JMPNZ_EX
+ ~3
+ $2,->11
+
+
+ 76
+ ADD_STRING
+ ~4
+ 'error%3A%27'
+
+
+ 7
+ ADD_VAR
+ ~4
+ ~4,!1
+
+
+ 8
+ ADD_CHAR
+ ~4
+ ~4,39
+
+
+ 9
+ EXIT
+
+ ~4
+
+
+ 10
+ BOOL
+ ~3
+ true
+
+
+ 11
+ FREE
+
+ ~3
+
+
+ 812
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/exit.xml b/internals2/opcodes/exit.xml
new file mode 100644
index 0000000000..32126b4db2
--- /dev/null
+++ b/internals2/opcodes/exit.xml
@@ -0,0 +1,49 @@
+
+
+
+ EXIT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ EXIT
+
+ 'foobar'
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/ext-fcall-begin.xml b/internals2/opcodes/ext-fcall-begin.xml
new file mode 100644
index 0000000000..ce94007546
--- /dev/null
+++ b/internals2/opcodes/ext-fcall-begin.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/ext-fcall-end.xml b/internals2/opcodes/ext-fcall-end.xml
new file mode 100644
index 0000000000..2bcc3c612b
--- /dev/null
+++ b/internals2/opcodes/ext-fcall-end.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/ext-nop.xml b/internals2/opcodes/ext-nop.xml
new file mode 100644
index 0000000000..b652aff266
--- /dev/null
+++ b/internals2/opcodes/ext-nop.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/ext-stmt.xml b/internals2/opcodes/ext-stmt.xml
new file mode 100644
index 0000000000..1422532268
--- /dev/null
+++ b/internals2/opcodes/ext-stmt.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fe-fetch.xml b/internals2/opcodes/fe-fetch.xml
new file mode 100644
index 0000000000..e0db677cb8
--- /dev/null
+++ b/internals2/opcodes/fe-fetch.xml
@@ -0,0 +1,118 @@
+
+
+
+ FE_FETCH
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a, !1=$num
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ FE_RESET
+ $2
+ !0,->11
+
+
+ 5
+ FE_FETCH
+ $3
+ $2,->11
+
+
+ 6
+ ZEND_OP_DATA
+
+
+
+
+ 7
+ ASSIGN
+
+ !1,$3
+
+
+ 88
+ PRINT
+ ~5
+ !1
+
+
+ 9
+ FREE
+
+ ~5
+
+
+ 910
+ JMP
+
+ ->5
+
+
+ 11
+ SWITCH_FREE
+
+ $2
+
+
+ 1012
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fe-reset.xml b/internals2/opcodes/fe-reset.xml
new file mode 100644
index 0000000000..39f67d1432
--- /dev/null
+++ b/internals2/opcodes/fe-reset.xml
@@ -0,0 +1,118 @@
+
+
+
+ FE_RESET
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a, !1=$num
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ FE_RESET
+ $2
+ !0,->11
+
+
+ 5
+ FE_FETCH
+ $3
+ $2,->11
+
+
+ 6
+ ZEND_OP_DATA
+
+
+
+
+ 7
+ ASSIGN
+
+ !1,$3
+
+
+ 88
+ PRINT
+ ~5
+ !1
+
+
+ 9
+ FREE
+
+ ~5
+
+
+ 910
+ JMP
+
+ ->5
+
+
+ 11
+ SWITCH_FREE
+
+ $2
+
+
+ 1012
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-class.xml b/internals2/opcodes/fetch-class.xml
new file mode 100644
index 0000000000..ae167cdbd1
--- /dev/null
+++ b/internals2/opcodes/fetch-class.xml
@@ -0,0 +1,67 @@
+
+
+
+ FETCH_CLASS
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-constant.xml b/internals2/opcodes/fetch-constant.xml
new file mode 100644
index 0000000000..65930030cb
--- /dev/null
+++ b/internals2/opcodes/fetch-constant.xml
@@ -0,0 +1,74 @@
+
+
+
+ FETCH_CONSTANT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ SEND_VAL
+
+ 'FOO'
+
+
+ 1
+ SEND_VAL
+
+ 'something'
+
+
+ 2
+ DO_FCALL
+ 2
+ 'define'
+
+
+ 73
+ FETCH_CONSTANT
+ ~1
+ 'FOO'
+
+
+ 4
+ ECHO
+
+ ~1
+
+
+ 85
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-func-arg.xml b/internals2/opcodes/fetch-dim-func-arg.xml
new file mode 100644
index 0000000000..431727ff2f
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-func-arg.xml
@@ -0,0 +1,170 @@
+
+
+
+ FETCH_DIM_FUNC_ARG
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$z
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ NOP
+
+
+
+
+ 121
+ INIT_ARRAY
+ ~0
+ 0
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 1
+
+
+ 3
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 4
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 5
+ ADD_ARRAY_ELEMENT
+ ~0
+ 4
+
+
+ 6
+ ADD_ARRAY_ELEMENT
+ ~0
+ 5
+
+
+ 7
+ ASSIGN
+
+ !0,~0
+
+
+ 138
+ ASSIGN
+
+ !1,'foo'
+
+
+ 159
+ INIT_FCALL_BY_NAME
+
+ !1
+
+
+ 10
+ FETCH_DIM_FUNC_ARG
+ $3
+ !0,0
+
+
+ 11
+ SEND_VAR
+
+ $3
+
+
+ 12
+ DO_FCALL_BY_NAME
+ 1
+
+
+
+ 1713
+ RETURN
+
+ 1
+
+
+
+
+ Function name: foo
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ RECV
+
+ 1
+
+
+ 91
+ PRINT
+ ~0
+ !0
+
+
+ 2
+ FREE
+
+ ~0
+
+
+ 103
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-is.xml b/internals2/opcodes/fetch-dim-is.xml
new file mode 100644
index 0000000000..650611945a
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-is.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-r.xml b/internals2/opcodes/fetch-dim-r.xml
new file mode 100644
index 0000000000..d2b348821f
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-r.xml
@@ -0,0 +1,93 @@
+
+
+
+ FETCH_DIM_R
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ ASSIGN
+
+ !1,'x'
+
+
+ 85
+ FETCH_DIM_R
+ $3
+ !1,0
+
+
+ 6
+ FETCH_Rlocal
+ $4
+ $3
+
+
+ 7
+ ECHO
+
+ $4
+
+
+ 98
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-rw.xml b/internals2/opcodes/fetch-dim-rw.xml
new file mode 100644
index 0000000000..e3b9c50be2
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-rw.xml
@@ -0,0 +1,99 @@
+
+
+
+ FETCH_DIM_RW
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ ASSIGN
+
+ !1,'x'
+
+
+ 85
+ FETCH_DIM_R
+ $3
+ !1,0
+
+
+ 6
+ FETCH_RWlocal
+ $4
+ $3
+
+
+ 7
+ POST_INC
+ ~5
+ $4
+
+
+ 8
+ FREE
+
+ ~5
+
+
+ 99
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-tmp-var.xml b/internals2/opcodes/fetch-dim-tmp-var.xml
new file mode 100644
index 0000000000..f3804101bd
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-tmp-var.xml
@@ -0,0 +1,67 @@
+
+
+
+ FETCH_DIM_TMP_VAR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 'X'
+
+
+ 1
+ FETCH_DIM_TMP_VAR
+ $1
+ ~0,0
+
+
+ 2
+ ASSIGN
+
+ !0,$1
+
+
+ 3
+ FREE
+
+ ~0
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-unset.xml b/internals2/opcodes/fetch-dim-unset.xml
new file mode 100644
index 0000000000..82b443f4c2
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-unset.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-dim-w.xml b/internals2/opcodes/fetch-dim-w.xml
new file mode 100644
index 0000000000..c2ef41b2fd
--- /dev/null
+++ b/internals2/opcodes/fetch-dim-w.xml
@@ -0,0 +1,89 @@
+
+
+
+ FETCH_DIM_W
+
+ PHP code
+
+ 0){
+ $a = 0;
+}
+/*$input =array(1,2,3);
+while (list($var,) = @each($input)){
+ unset($$var);
+}*/
+/*$a = array(1,2,3);
+$x = 'a';
+$$x[0] = 1;*/
+
+/*while ($b = each($a)) {
+ print $b;
+}*/
+
+
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ IS_SMALLER
+ ~1
+ 0,!0
+
+
+ 2
+ JMPZ
+
+ ~1,->5
+
+
+ 83
+ ASSIGN
+
+ !0,0
+
+
+ 94
+ JMP
+
+ ->1
+
+
+ 235
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-func-arg.xml b/internals2/opcodes/fetch-func-arg.xml
new file mode 100644
index 0000000000..a63f8d2a2b
--- /dev/null
+++ b/internals2/opcodes/fetch-func-arg.xml
@@ -0,0 +1,127 @@
+
+
+
+ FETCH_FUNC_ARG
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$y, !2=$z
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 101
+ ASSIGN
+
+ !0,1
+
+
+ 112
+ ASSIGN
+
+ !1,'x'
+
+
+ 123
+ ASSIGN
+
+ !2,'foo'
+
+
+ 144
+ INIT_FCALL_BY_NAME
+
+ !2
+
+
+ 5
+ FETCH_FUNC_ARGlocal
+ $3
+ !1
+
+
+ 6
+ SEND_VAR
+
+ $3
+
+
+ 7
+ DO_FCALL_BY_NAME
+ 1
+
+
+
+ 168
+ RETURN
+
+ 1
+
+
+
+
+ Function name: foo
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RECV
+
+ 1
+
+
+ 81
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-is.xml b/internals2/opcodes/fetch-is.xml
new file mode 100644
index 0000000000..dbde0d2948
--- /dev/null
+++ b/internals2/opcodes/fetch-is.xml
@@ -0,0 +1,111 @@
+
+
+
+ FETCH_IS
+
+ PHP code
+
+ prop->prop);
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ FETCH_IS
+ $0
+ '_SESSION'
+
+
+ 1
+ ZEND_ISSET_ISEMPTY_DIM_OBJ
+ 1~1
+ $0,'userid'
+
+
+ 2
+ ECHO
+
+ ~1
+
+
+ 73
+ FETCH_IS
+ $2
+ '_SESSION'
+
+
+ 4
+ FETCH_DIM_IS
+ $3
+ $2,'userid'
+
+
+ 5
+ ZEND_ISSET_ISEMPTY_DIM_OBJ
+ 1~4
+ $3,1
+
+
+ 6
+ ECHO
+
+ ~4
+
+
+ 87
+ FETCH_IS
+ $5
+ '_SESSION'
+
+
+ 8
+ FETCH_OBJ_IS
+ $6
+ $5,'prop'
+
+
+ 9
+ ZEND_ISSET_ISEMPTY_PROP_OBJ
+ ~7
+ $6,'prop'
+
+
+ 10
+ ECHO
+
+ ~7
+
+
+ 911
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-obj-func-arg.xml b/internals2/opcodes/fetch-obj-func-arg.xml
new file mode 100644
index 0000000000..ca944d9cca
--- /dev/null
+++ b/internals2/opcodes/fetch-obj-func-arg.xml
@@ -0,0 +1,217 @@
+
+
+
+ FETCH_OBJ_FUNC_ARG
+
+ PHP code
+
+ num;
+$z($obj->num);
+
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$z, !1=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INCLUDE_OR_EVAL
+
+ '.%2FclassA.php',INCLUDE
+
+
+ 81
+ NOP
+
+
+
+
+ 132
+ ASSIGN
+
+ !0,'foo'
+
+
+ 153
+ ZEND_FETCH_CLASS
+ :2
+ 'A'
+
+
+ 4
+ NEW
+ $3
+ :2
+
+
+ 5
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 6
+ ASSIGN
+
+ !1,$3
+
+
+ 167
+ FETCH_OBJ_R
+ $6
+ !1,'num'
+
+
+ 8
+ PRINT
+ ~7
+ $6
+
+
+ 9
+ FREE
+
+ ~7
+
+
+ 1710
+ INIT_FCALL_BY_NAME
+
+ !0
+
+
+ 11
+ FETCH_OBJ_FUNC_ARG
+ $8
+ !1,'num'
+
+
+ 12
+ SEND_VAR
+
+ $8
+
+
+ 13
+ DO_FCALL_BY_NAME
+ 1
+
+
+
+ 1914
+ RETURN
+
+ 1
+
+
+
+
+ Function name: foo
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 80
+ RECV
+
+ 1
+
+
+ 101
+ PRINT
+ ~0
+ !0
+
+
+ 2
+ FREE
+
+ ~0
+
+
+ 113
+ RETURN
+
+ null
+
+
+
+
+ Function name: foo
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 80
+ RECV
+
+ 1
+
+
+ 101
+ PRINT
+ ~0
+ !0
+
+
+ 2
+ FREE
+
+ ~0
+
+
+ 113
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-obj-is.xml b/internals2/opcodes/fetch-obj-is.xml
new file mode 100644
index 0000000000..30844b43e4
--- /dev/null
+++ b/internals2/opcodes/fetch-obj-is.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-obj-r.xml b/internals2/opcodes/fetch-obj-r.xml
new file mode 100644
index 0000000000..cb3f7cbccc
--- /dev/null
+++ b/internals2/opcodes/fetch-obj-r.xml
@@ -0,0 +1,93 @@
+
+
+
+ FETCH_OBJ_R
+
+ PHP code
+
+ num;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ASSIGN
+
+ !1,'x'
+
+
+ 85
+ FETCH_Rlocal
+ $5
+ !1
+
+
+ 6
+ FETCH_OBJ_R
+ $6
+ $5,'num'
+
+
+ 7
+ ECHO
+
+ $6
+
+
+ 98
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-obj-rw.xml b/internals2/opcodes/fetch-obj-rw.xml
new file mode 100644
index 0000000000..8821863509
--- /dev/null
+++ b/internals2/opcodes/fetch-obj-rw.xml
@@ -0,0 +1,93 @@
+
+
+
+ FETCH_OBJ_RW
+
+ PHP code
+
+ num++;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ASSIGN
+
+ !1,'x'
+
+
+ 85
+ FETCH_RWlocal
+ $5
+ !1
+
+
+ 6
+ ZEND_POST_INC_OBJ
+ ~7
+ $5,'num'
+
+
+ 7
+ FREE
+
+ ~7
+
+
+ 98
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-obj-unset.xml b/internals2/opcodes/fetch-obj-unset.xml
new file mode 100644
index 0000000000..f6b8e35fc5
--- /dev/null
+++ b/internals2/opcodes/fetch-obj-unset.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-obj-w.xml b/internals2/opcodes/fetch-obj-w.xml
new file mode 100644
index 0000000000..c171fbb7e0
--- /dev/null
+++ b/internals2/opcodes/fetch-obj-w.xml
@@ -0,0 +1,93 @@
+
+
+
+ FETCH_OBJ_W
+
+ PHP code
+
+ num = 1;;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ASSIGN
+
+ !1,'x'
+
+
+ 85
+ FETCH_Wlocal
+ $5
+ !1
+
+
+ 6
+ ZEND_ASSIGN_OBJ
+
+ $5,'num'
+
+
+ 7
+ ZEND_OP_DATA
+
+ 1
+
+
+ 98
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-r.xml b/internals2/opcodes/fetch-r.xml
new file mode 100644
index 0000000000..d304b140f1
--- /dev/null
+++ b/internals2/opcodes/fetch-r.xml
@@ -0,0 +1,69 @@
+
+
+
+ FETCH_R
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ ASSIGN
+
+ !1,'x'
+
+
+ 82
+ FETCH_Rlocal
+ $2
+ !1
+
+
+ 3
+ ECHO
+
+ $2
+
+
+ 94
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-rw.xml b/internals2/opcodes/fetch-rw.xml
new file mode 100644
index 0000000000..7a857f0732
--- /dev/null
+++ b/internals2/opcodes/fetch-rw.xml
@@ -0,0 +1,75 @@
+
+
+
+ FETCH_RW
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ ASSIGN
+
+ !1,'x'
+
+
+ 82
+ FETCH_RWlocal
+ $2
+ !1
+
+
+ 3
+ POST_INC
+ ~3
+ $2
+
+
+ 4
+ FREE
+
+ ~3
+
+
+ 95
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-unset.xml b/internals2/opcodes/fetch-unset.xml
new file mode 100644
index 0000000000..56a6678fe8
--- /dev/null
+++ b/internals2/opcodes/fetch-unset.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/fetch-w.xml b/internals2/opcodes/fetch-w.xml
new file mode 100644
index 0000000000..bff0b47e17
--- /dev/null
+++ b/internals2/opcodes/fetch-w.xml
@@ -0,0 +1,69 @@
+
+
+
+ FETCH_W
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ ASSIGN
+
+ !1,'x'
+
+
+ 82
+ FETCH_Wlocal
+ $2
+ !1
+
+
+ 3
+ ASSIGN
+
+ $2,2
+
+
+ 94
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/free.xml b/internals2/opcodes/free.xml
new file mode 100644
index 0000000000..e727ab7182
--- /dev/null
+++ b/internals2/opcodes/free.xml
@@ -0,0 +1,55 @@
+
+
+
+ FREE
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ PRINT
+ ~0
+ 'Hello+World'
+
+
+ 1
+ FREE
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/goto.xml b/internals2/opcodes/goto.xml
new file mode 100644
index 0000000000..0b3d735e0e
--- /dev/null
+++ b/internals2/opcodes/goto.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/handle-exception.xml b/internals2/opcodes/handle-exception.xml
new file mode 100644
index 0000000000..331f04e38a
--- /dev/null
+++ b/internals2/opcodes/handle-exception.xml
@@ -0,0 +1,42 @@
+
+
+
+ HANDLE_EXCEPTION
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/include-or-eval.xml b/internals2/opcodes/include-or-eval.xml
new file mode 100644
index 0000000000..eb11682918
--- /dev/null
+++ b/internals2/opcodes/include-or-eval.xml
@@ -0,0 +1,83 @@
+
+
+
+ INCLUDE_OR_EVAL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INCLUDE_OR_EVAL
+
+ 'test.php',INCLUDE
+
+
+ 71
+ INCLUDE_OR_EVAL
+
+ 'test.php',EVAL
+
+
+ 82
+ RETURN
+
+ 1
+
+
+
+
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 20
+ DO_FCALL
+ 0
+ 'phpinfo'
+
+
+ 31
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/init-array.xml b/internals2/opcodes/init-array.xml
new file mode 100644
index 0000000000..5f18254f86
--- /dev/null
+++ b/internals2/opcodes/init-array.xml
@@ -0,0 +1,80 @@
+
+
+
+ INIT_ARRAY
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ SEND_VAR
+
+ !0
+
+
+ 5
+ DO_FCALL
+ 1
+ 'print_r'
+
+
+ 86
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/init-fcall-by-name.xml b/internals2/opcodes/init-fcall-by-name.xml
new file mode 100644
index 0000000000..9efa405204
--- /dev/null
+++ b/internals2/opcodes/init-fcall-by-name.xml
@@ -0,0 +1,68 @@
+
+
+
+ INIT_FCALL_BY_NAME
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,'phpinfo'
+
+
+ 71
+ INIT_FCALL_BY_NAME
+
+ !0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !1,$1
+
+
+ 84
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/init-method-call.xml b/internals2/opcodes/init-method-call.xml
new file mode 100644
index 0000000000..ff01f05e77
--- /dev/null
+++ b/internals2/opcodes/init-method-call.xml
@@ -0,0 +1,127 @@
+
+
+
+ INIT_METHOD_CALL
+
+ PHP code
+
+ incrementNum();
+
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 131
+ ZEND_FETCH_CLASS
+ :1
+ 'A'
+
+
+ 2
+ NEW
+ $2
+ :1
+
+
+ 3
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 4
+ ASSIGN
+
+ !0,$2
+
+
+ 145
+ ZEND_INIT_METHOD_CALL
+
+ !0,'incrementNum'
+
+
+ 6
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 167
+ RETURN
+
+ 1
+
+
+
+
+ Function name: incrementNum
+ Compiled variables: !0=$num
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 90
+ POST_INC
+ ~0
+ !0
+
+
+ 1
+ FREE
+
+ ~0
+
+
+ 102
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/init-ns-fcall-by-name.xml b/internals2/opcodes/init-ns-fcall-by-name.xml
new file mode 100644
index 0000000000..0d43f558d3
--- /dev/null
+++ b/internals2/opcodes/init-ns-fcall-by-name.xml
@@ -0,0 +1,18 @@
+
+
+
+ INIT_NS_FCALL_BY_NAME
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/init-static-method-call.xml b/internals2/opcodes/init-static-method-call.xml
new file mode 100644
index 0000000000..b8b0bbe04f
--- /dev/null
+++ b/internals2/opcodes/init-static-method-call.xml
@@ -0,0 +1,100 @@
+
+
+
+ INIT_STATIC_METHOD_CALL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 121
+ ZEND_INIT_STATIC_METHOD_CALL
+
+ 'Foo','aStaticMethod'
+
+
+ 2
+ ZEND_OP_DATA
+
+ 'foo%3A%3Aastaticmethod'
+
+
+ 3
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 134
+ RETURN
+
+ 1
+
+
+
+
+ Function name: aStaticMethod
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 80
+ ECHO
+
+ 'hello+world%0A'
+
+
+ 91
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/init-string.xml b/internals2/opcodes/init-string.xml
new file mode 100644
index 0000000000..fe3a745b63
--- /dev/null
+++ b/internals2/opcodes/init-string.xml
@@ -0,0 +1,67 @@
+
+
+
+ INIT_STRING
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ADD_STRING
+ ~0
+ 'hello'
+
+
+ 1
+ ADD_VAR
+ ~0
+ ~0,!0
+
+
+ 2
+ ADD_STRING
+ ~0
+ ~0,'+world'
+
+
+ 3
+ ECHO
+
+ ~0
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/instanceof.xml b/internals2/opcodes/instanceof.xml
new file mode 100644
index 0000000000..f2cca54016
--- /dev/null
+++ b/internals2/opcodes/instanceof.xml
@@ -0,0 +1,101 @@
+
+
+
+ INSTANCEOF
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 84
+ ZEND_FETCH_CLASS
+ :4
+ 'A'
+
+
+ 5
+ ZEND_INSTANCEOF
+ ~5
+ !0,$4
+
+
+ 6
+ JMPZ
+
+ ~5,->9
+
+
+ 97
+ ECHO
+
+ 'A'
+
+
+ 108
+ JMP
+
+ ->9
+
+
+ 119
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/is-equal.xml b/internals2/opcodes/is-equal.xml
new file mode 100644
index 0000000000..6010047bd5
--- /dev/null
+++ b/internals2/opcodes/is-equal.xml
@@ -0,0 +1,68 @@
+
+
+
+ IS_EQUAL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_EQUAL
+ ~0
+ 1,1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ IS_EQUAL
+ ~1
+ 1,'c'
+
+
+ 3
+ ECHO
+
+ ~1
+
+
+ 84
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/is-identical.xml b/internals2/opcodes/is-identical.xml
new file mode 100644
index 0000000000..03a0335151
--- /dev/null
+++ b/internals2/opcodes/is-identical.xml
@@ -0,0 +1,68 @@
+
+
+
+ IS_IDENTICAL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_IDENTICAL
+ ~0
+ 1,1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ IS_IDENTICAL
+ ~1
+ 1,'a'
+
+
+ 3
+ ECHO
+
+ ~1
+
+
+ 84
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/is-not-equal.xml b/internals2/opcodes/is-not-equal.xml
new file mode 100644
index 0000000000..4e58bcdf96
--- /dev/null
+++ b/internals2/opcodes/is-not-equal.xml
@@ -0,0 +1,55 @@
+
+
+
+ IS_NOT_EQUAL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_NOT_EQUAL
+ ~0
+ 1,1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/is-not-identical.xml b/internals2/opcodes/is-not-identical.xml
new file mode 100644
index 0000000000..58a85da1be
--- /dev/null
+++ b/internals2/opcodes/is-not-identical.xml
@@ -0,0 +1,55 @@
+
+
+
+ IS_NOT_IDENTICAL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_NOT_IDENTICAL
+ ~0
+ 1,1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/is-smaller-or-equal.xml b/internals2/opcodes/is-smaller-or-equal.xml
new file mode 100644
index 0000000000..bf54b9289e
--- /dev/null
+++ b/internals2/opcodes/is-smaller-or-equal.xml
@@ -0,0 +1,55 @@
+
+
+
+ IS_SMALLER_OR_EQUAL
+
+ PHP code
+
+ = 2);
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_SMALLER_OR_EQUAL
+ ~0
+ 2,1
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/is-smaller.xml b/internals2/opcodes/is-smaller.xml
new file mode 100644
index 0000000000..1bd2d659df
--- /dev/null
+++ b/internals2/opcodes/is-smaller.xml
@@ -0,0 +1,55 @@
+
+
+
+ IS_SMALLER
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_SMALLER
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/isset-isempty-dim-obj.xml b/internals2/opcodes/isset-isempty-dim-obj.xml
new file mode 100644
index 0000000000..823105cdf4
--- /dev/null
+++ b/internals2/opcodes/isset-isempty-dim-obj.xml
@@ -0,0 +1,67 @@
+
+
+
+ ISSET_ISEMPTY_DIM_OBJ
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_ISSET_ISEMPTY_DIM_OBJ
+ 1~0
+ !0,0
+
+
+ 1
+ JMPZ
+
+ ~0,->4
+
+
+ 2
+ RETURN
+
+ 0
+
+
+ 3
+ JMP
+
+ ->4
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/isset-isempty-prop-obj.xml b/internals2/opcodes/isset-isempty-prop-obj.xml
new file mode 100644
index 0000000000..ea4c23deeb
--- /dev/null
+++ b/internals2/opcodes/isset-isempty-prop-obj.xml
@@ -0,0 +1,92 @@
+
+
+
+ ISSET_ISEMPTY_PROP_OBJ
+
+ PHP code
+
+ num)) return 0;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ZEND_ISSET_ISEMPTY_PROP_OBJ
+ ~4
+ !0,'num'
+
+
+ 5
+ JMPZ
+
+ ~4,->8
+
+
+ 6
+ RETURN
+
+ 0
+
+
+ 7
+ JMP
+
+ ->8
+
+
+ 88
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/isset-isempty-var.xml b/internals2/opcodes/isset-isempty-var.xml
new file mode 100644
index 0000000000..af188945d0
--- /dev/null
+++ b/internals2/opcodes/isset-isempty-var.xml
@@ -0,0 +1,67 @@
+
+
+
+ ISSET_ISEMPTY_VAR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_ISSET_ISEMPTY_VAR
+ 5~0
+ !0
+
+
+ 1
+ JMPZ
+
+ ~0,->4
+
+
+ 2
+ RETURN
+
+ 0
+
+
+ 3
+ JMP
+
+ ->4
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/jmp.xml b/internals2/opcodes/jmp.xml
new file mode 100644
index 0000000000..64b8bf4c80
--- /dev/null
+++ b/internals2/opcodes/jmp.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/jmpnz-ex.xml b/internals2/opcodes/jmpnz-ex.xml
new file mode 100644
index 0000000000..5f26fd803f
--- /dev/null
+++ b/internals2/opcodes/jmpnz-ex.xml
@@ -0,0 +1,67 @@
+
+
+
+ JMPNZ_EX
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BW_XOR
+ ~0
+ 1,2
+
+
+ 1
+ JMPZ
+
+ ~0,->4
+
+
+ 2
+ RETURN
+
+ null
+
+
+ 3
+ JMP
+
+ ->4
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/jmpnz.xml b/internals2/opcodes/jmpnz.xml
new file mode 100644
index 0000000000..ea7b3ed04f
--- /dev/null
+++ b/internals2/opcodes/jmpnz.xml
@@ -0,0 +1,93 @@
+
+
+
+ JMPNZ
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$i
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,0
+
+
+ 1
+ IS_SMALLER
+ ~1
+ !0,3
+
+
+ 2
+ JMPZNZ
+ 6
+ ~1,->8
+
+
+ 3
+ POST_INC
+ ~2
+ !0
+
+
+ 4
+ FREE
+
+ ~2
+
+
+ 5
+ JMP
+
+ ->1
+
+
+ 76
+ ECHO
+
+ 'hi'
+
+
+ 87
+ JMP
+
+ ->3
+
+
+ 98
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/jmpz-ex.xml b/internals2/opcodes/jmpz-ex.xml
new file mode 100644
index 0000000000..b1bbbb6340
--- /dev/null
+++ b/internals2/opcodes/jmpz-ex.xml
@@ -0,0 +1,43 @@
+
+
+
+ JMPZ_EX
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/jmpz.xml b/internals2/opcodes/jmpz.xml
new file mode 100644
index 0000000000..e4cbbe0e9f
--- /dev/null
+++ b/internals2/opcodes/jmpz.xml
@@ -0,0 +1,67 @@
+
+
+
+ JMPZ
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ IS_NOT_EQUAL
+ ~0
+ !0,0
+
+
+ 1
+ JMPZ
+
+ ~0,->4
+
+
+ 2
+ ECHO
+
+ 'foo'
+
+
+ 3
+ JMP
+
+ ->4
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/jmpznz.xml b/internals2/opcodes/jmpznz.xml
new file mode 100644
index 0000000000..d647cf60e2
--- /dev/null
+++ b/internals2/opcodes/jmpznz.xml
@@ -0,0 +1,93 @@
+
+
+
+ JMPZNZ
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$i
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,0
+
+
+ 1
+ IS_SMALLER
+ ~1
+ !0,3
+
+
+ 2
+ JMPZNZ
+ 6
+ ~1,->8
+
+
+ 3
+ POST_INC
+ ~2
+ !0
+
+
+ 4
+ FREE
+
+ ~2
+
+
+ 5
+ JMP
+
+ ->1
+
+
+ 76
+ ECHO
+
+ 'hi'
+
+
+ 87
+ JMP
+
+ ->3
+
+
+ 98
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/mod.xml b/internals2/opcodes/mod.xml
new file mode 100644
index 0000000000..a1e0a1a84c
--- /dev/null
+++ b/internals2/opcodes/mod.xml
@@ -0,0 +1,55 @@
+
+
+
+ MOD
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ MOD
+ ~0
+ 6,3
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/mul.xml b/internals2/opcodes/mul.xml
new file mode 100644
index 0000000000..683e3e420e
--- /dev/null
+++ b/internals2/opcodes/mul.xml
@@ -0,0 +1,55 @@
+
+
+
+ MUL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ MUL
+ ~0
+ 2,3
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/new.xml b/internals2/opcodes/new.xml
new file mode 100644
index 0000000000..d63ef59f53
--- /dev/null
+++ b/internals2/opcodes/new.xml
@@ -0,0 +1,67 @@
+
+
+
+ NEW
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/nop.xml b/internals2/opcodes/nop.xml
new file mode 100644
index 0000000000..e9d988c199
--- /dev/null
+++ b/internals2/opcodes/nop.xml
@@ -0,0 +1,70 @@
+
+
+
+ NOP
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+ Function name: A
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/post-dec-obj.xml b/internals2/opcodes/post-dec-obj.xml
new file mode 100644
index 0000000000..413738b02e
--- /dev/null
+++ b/internals2/opcodes/post-dec-obj.xml
@@ -0,0 +1,80 @@
+
+
+
+ POST_DEC_OBJ
+
+ PHP code
+
+ num--;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ZEND_POST_DEC_OBJ
+ ~5
+ !0,'num'
+
+
+ 5
+ FREE
+
+ ~5
+
+
+ 86
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/post-dec.xml b/internals2/opcodes/post-dec.xml
new file mode 100644
index 0000000000..26ba6760ac
--- /dev/null
+++ b/internals2/opcodes/post-dec.xml
@@ -0,0 +1,55 @@
+
+
+
+ POST_DEC
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ POST_DEC
+ ~0
+ !0
+
+
+ 1
+ FREE
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/post-inc-obj.xml b/internals2/opcodes/post-inc-obj.xml
new file mode 100644
index 0000000000..5f09ce9208
--- /dev/null
+++ b/internals2/opcodes/post-inc-obj.xml
@@ -0,0 +1,80 @@
+
+
+
+ POST_INC_OBJ
+
+ PHP code
+
+ num++;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ZEND_POST_INC_OBJ
+ ~5
+ !0,'num'
+
+
+ 5
+ FREE
+
+ ~5
+
+
+ 86
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/post-inc.xml b/internals2/opcodes/post-inc.xml
new file mode 100644
index 0000000000..5d01053ec7
--- /dev/null
+++ b/internals2/opcodes/post-inc.xml
@@ -0,0 +1,55 @@
+
+
+
+ POST_INC
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ POST_INC
+ ~0
+ !0
+
+
+ 1
+ FREE
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/pre-dec-obj.xml b/internals2/opcodes/pre-dec-obj.xml
new file mode 100644
index 0000000000..17a89cdf96
--- /dev/null
+++ b/internals2/opcodes/pre-dec-obj.xml
@@ -0,0 +1,74 @@
+
+
+
+ PRE_DEC_OBJ
+
+ PHP code
+
+ num;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ZEND_PRE_DEC_OBJ
+
+ !0,'num'
+
+
+ 85
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/pre-dec.xml b/internals2/opcodes/pre-dec.xml
new file mode 100644
index 0000000000..94a35e6acb
--- /dev/null
+++ b/internals2/opcodes/pre-dec.xml
@@ -0,0 +1,49 @@
+
+
+
+ PRE_DEC
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ PRE_DEC
+
+ !0
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/pre-inc-obj.xml b/internals2/opcodes/pre-inc-obj.xml
new file mode 100644
index 0000000000..92abd004de
--- /dev/null
+++ b/internals2/opcodes/pre-inc-obj.xml
@@ -0,0 +1,74 @@
+
+
+
+ PRE_INC_OBJ
+
+ PHP code
+
+ num;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ ZEND_PRE_INC_OBJ
+
+ !0,'num'
+
+
+ 85
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/pre-inc.xml b/internals2/opcodes/pre-inc.xml
new file mode 100644
index 0000000000..c9fba0f019
--- /dev/null
+++ b/internals2/opcodes/pre-inc.xml
@@ -0,0 +1,49 @@
+
+
+
+ PRE_INC
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ PRE_INC
+
+ !0
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/print.xml b/internals2/opcodes/print.xml
new file mode 100644
index 0000000000..c52a823f00
--- /dev/null
+++ b/internals2/opcodes/print.xml
@@ -0,0 +1,55 @@
+
+
+
+ PRINT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ PRINT
+ ~0
+ 'Hello+World'
+
+
+ 1
+ FREE
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/qm-assign.xml b/internals2/opcodes/qm-assign.xml
new file mode 100644
index 0000000000..a2739ec38d
--- /dev/null
+++ b/internals2/opcodes/qm-assign.xml
@@ -0,0 +1,176 @@
+
+
+
+ QM_ASSIGN
+
+ PHP code
+
+ 1 ? 10: 11;
+}
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 101
+ NOP
+
+
+
+
+ 142
+ RETURN
+
+ 1
+
+
+
+
+ Function name: A
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ JMPZ
+
+ 1,->3
+
+
+ 1
+ QM_ASSIGN
+ ~0
+ 2
+
+
+ 2
+ JMP
+
+ ->4
+
+
+ 3
+ QM_ASSIGN
+ ~0
+ 3
+
+
+ 4
+ ECHO
+
+ ~0
+
+
+ 85
+ RETURN
+
+ null
+
+
+
+
+ Function name: B
+ Compiled variables: !0=$b, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 110
+ ASSIGN
+
+ !0,0
+
+
+ 121
+ IS_SMALLER
+ ~1
+ 1,!0
+
+
+ 2
+ JMPZ
+
+ ~1,->5
+
+
+ 3
+ QM_ASSIGN
+ ~2
+ 10
+
+
+ 4
+ JMP
+
+ ->6
+
+
+ 5
+ QM_ASSIGN
+ ~2
+ 11
+
+
+ 6
+ ASSIGN
+
+ !1,~2
+
+
+ 137
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/raise-abstract-error.xml b/internals2/opcodes/raise-abstract-error.xml
new file mode 100644
index 0000000000..3543a5cacb
--- /dev/null
+++ b/internals2/opcodes/raise-abstract-error.xml
@@ -0,0 +1,210 @@
+
+
+
+ RAISE_ABSTRACT_ERROR
+
+ PHP code
+
+ show();
+
+$t = new fail();
+$t->show();
+
+echo "Done\n"; // shouldn't be displayed
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$t2, !1=$t
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ NOP
+
+
+
+
+ 111
+ NOP
+
+
+
+
+ 2
+ NOP
+
+
+
+
+ 173
+ ZEND_FETCH_CLASS
+ :3
+ 'pass'
+
+
+ 4
+ NEW
+ $4
+ :3
+
+
+ 5
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 6
+ ASSIGN
+
+ !0,$4
+
+
+ 187
+ ZEND_INIT_METHOD_CALL
+
+ !0,'show'
+
+
+ 8
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 209
+ ZEND_FETCH_CLASS
+ :9
+ 'fail'
+
+
+ 10
+ NEW
+ $10
+ :9
+
+
+ 11
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 12
+ ASSIGN
+
+ !1,$10
+
+
+ 2113
+ ZEND_INIT_METHOD_CALL
+
+ !1,'show'
+
+
+ 14
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 2315
+ ECHO
+
+ 'Done%0A'
+
+
+ 2416
+ RETURN
+
+ 1
+
+
+
+
+ Function name: show
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 80
+ ZEND_RAISE_ABSTRACT_ERROR
+
+
+
+
+ 1
+ RETURN
+
+ null
+
+
+
+
+ Function name: show
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 130
+ ECHO
+
+ 'Call+to+function+show%28%29%0A'
+
+
+ 141
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/recv-init.xml b/internals2/opcodes/recv-init.xml
new file mode 100644
index 0000000000..aa54209ddd
--- /dev/null
+++ b/internals2/opcodes/recv-init.xml
@@ -0,0 +1,76 @@
+
+
+
+ RECV_INIT
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+ Function name: hello
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RECV_INIT
+
+ 1,5
+
+
+ 1
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/recv.xml b/internals2/opcodes/recv.xml
new file mode 100644
index 0000000000..9b183d37e8
--- /dev/null
+++ b/internals2/opcodes/recv.xml
@@ -0,0 +1,76 @@
+
+
+
+ RECV
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+ Function name: hello
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RECV
+
+ 1
+
+
+ 1
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/return-by-ref.xml b/internals2/opcodes/return-by-ref.xml
new file mode 100644
index 0000000000..357daa9731
--- /dev/null
+++ b/internals2/opcodes/return-by-ref.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/return.xml b/internals2/opcodes/return.xml
new file mode 100644
index 0000000000..aa4ef734dc
--- /dev/null
+++ b/internals2/opcodes/return.xml
@@ -0,0 +1,49 @@
+
+
+
+ RETURN
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RETURN
+
+ 1
+
+
+ 71
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/send-ref.xml b/internals2/opcodes/send-ref.xml
new file mode 100644
index 0000000000..f7e1782df3
--- /dev/null
+++ b/internals2/opcodes/send-ref.xml
@@ -0,0 +1,73 @@
+
+
+
+ SEND_REF
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ BEGIN_SILENCE
+ ~0
+
+
+
+ 1
+ FETCH_Wlocal
+ $1
+ 'input'
+
+
+ 2
+ SEND_REF
+
+ $1
+
+
+ 3
+ DO_FCALL
+ 1
+ 'each'
+
+
+ 4
+ END_SILENCE
+
+ ~0
+
+
+ 75
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/send-val.xml b/internals2/opcodes/send-val.xml
new file mode 100644
index 0000000000..0c29f6ee0e
--- /dev/null
+++ b/internals2/opcodes/send-val.xml
@@ -0,0 +1,118 @@
+
+
+
+ SEND_VAL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ NOP
+
+
+
+
+ 101
+ SEND_VAL
+
+ 'HELLO'
+
+
+ 2
+ DO_FCALL
+ 1
+ 'funca'
+
+
+ 123
+ SEND_VAL
+
+ 'IN_PHPBB'
+
+
+ 4
+ DO_FCALL
+ 1
+ 'defined'
+
+
+ 135
+ RETURN
+
+ 1
+
+
+
+
+ Function name: funcA
+ Compiled variables: !0=$msg
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ RECV
+
+ 1
+
+
+ 71
+ PRINT
+ ~0
+ !0
+
+
+ 2
+ FREE
+
+ ~0
+
+
+ 83
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/send-var-no-ref.xml b/internals2/opcodes/send-var-no-ref.xml
new file mode 100644
index 0000000000..da90bbd401
--- /dev/null
+++ b/internals2/opcodes/send-var-no-ref.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/send-var.xml b/internals2/opcodes/send-var.xml
new file mode 100644
index 0000000000..fc10387f1e
--- /dev/null
+++ b/internals2/opcodes/send-var.xml
@@ -0,0 +1,98 @@
+
+
+
+ SEND_VAR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ SEND_VAR
+
+ !0
+
+
+ 5
+ DO_FCALL
+ 1
+ 'is_array'
+
+
+ 6
+ JMPZ
+
+ $2,->9
+
+
+ 7
+ RETURN
+
+ 0
+
+
+ 8
+ JMP
+
+ ->9
+
+
+ 89
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/sl.xml b/internals2/opcodes/sl.xml
new file mode 100644
index 0000000000..8fa4eaae6c
--- /dev/null
+++ b/internals2/opcodes/sl.xml
@@ -0,0 +1,55 @@
+
+
+
+ SL
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ SL
+ ~0
+ 8,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/sr.xml b/internals2/opcodes/sr.xml
new file mode 100644
index 0000000000..369b96f4b1
--- /dev/null
+++ b/internals2/opcodes/sr.xml
@@ -0,0 +1,55 @@
+
+
+
+ SR
+
+ PHP code
+
+ > 2;
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ SR
+ ~0
+ 8,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/sub.xml b/internals2/opcodes/sub.xml
new file mode 100644
index 0000000000..f5a241d95e
--- /dev/null
+++ b/internals2/opcodes/sub.xml
@@ -0,0 +1,55 @@
+
+
+
+ SUB
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ SUB
+ ~0
+ 1,2
+
+
+ 1
+ ECHO
+
+ ~0
+
+
+ 72
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/switch-free.xml b/internals2/opcodes/switch-free.xml
new file mode 100644
index 0000000000..e5a26b31b2
--- /dev/null
+++ b/internals2/opcodes/switch-free.xml
@@ -0,0 +1,118 @@
+
+
+
+ SWITCH_FREE
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a, !1=$num
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ FE_RESET
+ $2
+ !0,->11
+
+
+ 5
+ FE_FETCH
+ $3
+ $2,->11
+
+
+ 6
+ ZEND_OP_DATA
+
+
+
+
+ 7
+ ASSIGN
+
+ !1,$3
+
+
+ 88
+ PRINT
+ ~5
+ !1
+
+
+ 9
+ FREE
+
+ ~5
+
+
+ 910
+ JMP
+
+ ->5
+
+
+ 11
+ SWITCH_FREE
+
+ $2
+
+
+ 1012
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/throw.xml b/internals2/opcodes/throw.xml
new file mode 100644
index 0000000000..f7d3939881
--- /dev/null
+++ b/internals2/opcodes/throw.xml
@@ -0,0 +1,151 @@
+
+
+
+ THROW
+
+ PHP code
+
+ getMessage(), "\n";
+}
+
+// Continue execution
+echo 'Hello World';
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$error, !1=$e
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ ASSIGN
+
+ !0,'Always+throw+this+error'
+
+
+ 81
+ ZEND_FETCH_CLASS
+ :1
+ 'Exception'
+
+
+ 2
+ NEW
+ $2
+ :1
+
+
+ 3
+ SEND_VAR
+
+ !0
+
+
+ 4
+ DO_FCALL_BY_NAME
+ 1
+
+
+
+ 5
+ ZEND_THROW
+ 0
+ $2
+
+
+ 116
+ ECHO
+
+ 'Never+executed'
+
+
+ 137
+ JMP
+
+ ->15
+
+
+ 8
+ ZEND_FETCH_CLASS
+ :4
+ 'Exception'
+
+
+ 9
+ ZEND_CATCH
+ 15
+ $4,!1
+
+
+ 1410
+ ECHO
+
+ 'Caught+exception%3A+'
+
+
+ 11
+ ZEND_INIT_METHOD_CALL
+
+ !1,'getMessage'
+
+
+ 12
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 13
+ ECHO
+
+ $6
+
+
+ 14
+ ECHO
+
+ '%0A'
+
+
+ 1815
+ ECHO
+
+ 'Hello+World'
+
+
+ 1916
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/ticks.xml b/internals2/opcodes/ticks.xml
new file mode 100644
index 0000000000..671cbf05c0
--- /dev/null
+++ b/internals2/opcodes/ticks.xml
@@ -0,0 +1,177 @@
+
+
+
+ TICKS
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 70
+ NOP
+
+
+
+
+ 131
+ SEND_VAL
+
+ 'profile'
+
+
+ 2
+ DO_FCALL
+ 1
+ 'register_tick_function'
+
+
+ 163
+ DO_FCALL
+ 0
+ 'profile'
+
+
+ 204
+ ASSIGN
+
+ !0,0
+
+
+ 5
+ IS_SMALLER
+ ~3
+ !0,10
+
+
+ 6
+ JMPZNZ
+ 9
+ ~3,->13
+
+
+ 7
+ PRE_INC
+
+ !0
+
+
+ 8
+ JMP
+
+ ->5
+
+
+ 219
+ ECHO
+
+ 'hello+world%0A'
+
+
+ 10
+ TICKS
+
+ 2
+
+
+ 2211
+ TICKS
+
+ 2
+
+
+ 12
+ JMP
+
+ ->7
+
+
+ 13
+ TICKS
+
+ 2
+
+
+ 2314
+ TICKS
+
+ 2
+
+
+ 2415
+ RETURN
+
+ 1
+
+
+
+
+ Function name: profile
+ Compiled variables: none
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 90
+ ECHO
+
+ 'profile+function+is+called%0A'
+
+
+ 101
+ RETURN
+
+ null
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/unset-dim.xml b/internals2/opcodes/unset-dim.xml
new file mode 100644
index 0000000000..96ee9f34b3
--- /dev/null
+++ b/internals2/opcodes/unset-dim.xml
@@ -0,0 +1,74 @@
+
+
+
+ UNSET_DIM
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ INIT_ARRAY
+ ~0
+ 1
+
+
+ 1
+ ADD_ARRAY_ELEMENT
+ ~0
+ 2
+
+
+ 2
+ ADD_ARRAY_ELEMENT
+ ~0
+ 3
+
+
+ 3
+ ASSIGN
+
+ !0,~0
+
+
+ 74
+ UNSET_DIM
+ $2
+ !0,0
+
+
+ 85
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/unset-obj.xml b/internals2/opcodes/unset-obj.xml
new file mode 100644
index 0000000000..0121a274d3
--- /dev/null
+++ b/internals2/opcodes/unset-obj.xml
@@ -0,0 +1,74 @@
+
+
+
+ UNSET_OBJ
+
+ PHP code
+
+ num);
+?>
+]]>
+
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$obj
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ZEND_FETCH_CLASS
+ :0
+ 'A'
+
+
+ 1
+ NEW
+ $1
+ :0
+
+
+ 2
+ DO_FCALL_BY_NAME
+ 0
+
+
+
+ 3
+ ASSIGN
+
+ !0,$1
+
+
+ 74
+ UNSET_OBJ
+ $4
+ !0,'num'
+
+
+ 85
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/unset-var.xml b/internals2/opcodes/unset-var.xml
new file mode 100644
index 0000000000..79e16846a1
--- /dev/null
+++ b/internals2/opcodes/unset-var.xml
@@ -0,0 +1,63 @@
+
+
+
+ UNSET_VAR
+
+
+ PHP opcodes
+ Function name: (null)
+ Compiled variables: !0=$x, !1=$a
+
+
+
+
+ line#op
+ fetchextreturn
+ operands
+
+
+
+
+ 60
+ ASSIGN
+
+ !0,1
+
+
+ 71
+ ASSIGN
+
+ !1,'x'
+
+
+ 82
+ UNSET_VAR
+ $2
+ !1
+
+
+ 93
+ RETURN
+
+ 1
+
+
+
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/user-opcode.xml b/internals2/opcodes/user-opcode.xml
new file mode 100644
index 0000000000..5890f6e84a
--- /dev/null
+++ b/internals2/opcodes/user-opcode.xml
@@ -0,0 +1,18 @@
+
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/verify-abstract-class.xml b/internals2/opcodes/verify-abstract-class.xml
new file mode 100644
index 0000000000..3ef42d52b9
--- /dev/null
+++ b/internals2/opcodes/verify-abstract-class.xml
@@ -0,0 +1,18 @@
+
+
+
+ VERIFY_ABSTRACT_CLASS
+
+
\ No newline at end of file
diff --git a/internals2/opcodes/zend-declare-lambda-function.xml b/internals2/opcodes/zend-declare-lambda-function.xml
new file mode 100644
index 0000000000..1d48412a97
--- /dev/null
+++ b/internals2/opcodes/zend-declare-lambda-function.xml
@@ -0,0 +1,18 @@
+
+
+
+ ZEND_DECLARE_LAMBDA_FUNCTION
+
+
diff --git a/internals2/opcodes/zend-jmp-set.xml b/internals2/opcodes/zend-jmp-set.xml
new file mode 100644
index 0000000000..01bd726e60
--- /dev/null
+++ b/internals2/opcodes/zend-jmp-set.xml
@@ -0,0 +1,18 @@
+
+
+