]> granicus.if.org Git - php/commitdiff
- Added separated file to opcode decode function
authorFelipe Pena <felipensp@gmail.com>
Sun, 10 Nov 2013 20:01:09 +0000 (18:01 -0200)
committerFelipe Pena <felipensp@gmail.com>
Sun, 10 Nov 2013 20:01:09 +0000 (18:01 -0200)
config.m4
phpdbg_opcode.c [new file with mode: 0644]
phpdbg_opcode.h [new file with mode: 0644]
phpdbg_prompt.c

index 4f98bb92bf71c89e90ae750fdf92cff9fe4fb607..f3671f4b10d0a8752c06a73960c5449f93358957 100644 (file)
--- a/config.m4
+++ b/config.m4
@@ -9,7 +9,7 @@ if test "$PHP_PHPDBG" != "no"; then
   AC_DEFINE(HAVE_PHPDBG, 1, [ ])
 
   PHP_PHPDBG_CFLAGS=-I$abs_srcdir/sapi/phpdbg
-  PHP_PHPDBG_FILES="phpdbg.c phpdbg_prompt.c phpdbg_help.c phpdbg_bp.c"
+  PHP_PHPDBG_FILES="phpdbg.c phpdbg_prompt.c phpdbg_help.c phpdbg_bp.c phpdbg_opcode.c"
 
   PHP_ADD_MAKEFILE_FRAGMENT([$abs_srcdir/sapi/phpdbg/Makefile.frag])
   PHP_SELECT_SAPI(phpdbg, program, $PHP_PHPDBG_FILES, $PHP_PHPDBG_CFLAGS, [$(SAPI_PHPDBG_PATH)])
diff --git a/phpdbg_opcode.c b/phpdbg_opcode.c
new file mode 100644 (file)
index 0000000..b77cfb7
--- /dev/null
@@ -0,0 +1,195 @@
+/*
+   +----------------------------------------------------------------------+
+   | PHP Version 5                                                        |
+   +----------------------------------------------------------------------+
+   | Copyright (c) 1997-2013 The PHP Group                                |
+   +----------------------------------------------------------------------+
+   | This source file is subject to version 3.01 of the PHP license,      |
+   | that is bundled with this package in the file LICENSE, and is        |
+   | available through the world-wide-web at the following url:           |
+   | http://www.php.net/license/3_01.txt                                  |
+   | If you did not receive a copy of the PHP license and are unable to   |
+   | obtain it through the world-wide-web, please send a note to          |
+   | license@php.net so we can mail you a copy immediately.               |
+   +----------------------------------------------------------------------+
+   | Authors: Felipe Pena <felipe@php.net>                                |
+   | Authors: Joe Watkins <joe.watkins@live.co.uk>                        |
+   +----------------------------------------------------------------------+
+*/
+
+#include "phpdbg_opcode.h"
+#include "zend_vm_opcodes.h"
+
+const char *phpdbg_decode_opcode(zend_uchar opcode) /* {{{ */
+{
+#define CASE(s) return #s
+       switch (opcode) {
+               CASE(ZEND_NOP);
+               CASE(ZEND_ADD);
+               CASE(ZEND_SUB);
+               CASE(ZEND_MUL);
+               CASE(ZEND_DIV);
+               CASE(ZEND_MOD);
+               CASE(ZEND_SL);
+               CASE(ZEND_SR);
+               CASE(ZEND_CONCAT);
+               CASE(ZEND_BW_OR);
+               CASE(ZEND_BW_AND);
+               CASE(ZEND_BW_XOR);
+               CASE(ZEND_BW_NOT);
+               CASE(ZEND_BOOL_NOT);
+               CASE(ZEND_BOOL_XOR);
+               CASE(ZEND_IS_IDENTICAL);
+               CASE(ZEND_IS_NOT_IDENTICAL);
+               CASE(ZEND_IS_EQUAL);
+               CASE(ZEND_IS_NOT_EQUAL);
+               CASE(ZEND_IS_SMALLER);
+               CASE(ZEND_IS_SMALLER_OR_EQUAL);
+               CASE(ZEND_CAST);
+               CASE(ZEND_QM_ASSIGN);
+               CASE(ZEND_ASSIGN_ADD);
+               CASE(ZEND_ASSIGN_SUB);
+               CASE(ZEND_ASSIGN_MUL);
+               CASE(ZEND_ASSIGN_DIV);
+               CASE(ZEND_ASSIGN_MOD);
+               CASE(ZEND_ASSIGN_SL);
+               CASE(ZEND_ASSIGN_SR);
+               CASE(ZEND_ASSIGN_CONCAT);
+               CASE(ZEND_ASSIGN_BW_OR);
+               CASE(ZEND_ASSIGN_BW_AND);
+               CASE(ZEND_ASSIGN_BW_XOR);
+               CASE(ZEND_PRE_INC);
+               CASE(ZEND_PRE_DEC);
+               CASE(ZEND_POST_INC);
+               CASE(ZEND_POST_DEC);
+               CASE(ZEND_ASSIGN);
+               CASE(ZEND_ASSIGN_REF);
+               CASE(ZEND_ECHO);
+               CASE(ZEND_PRINT);
+               CASE(ZEND_JMP);
+               CASE(ZEND_JMPZ);
+               CASE(ZEND_JMPNZ);
+               CASE(ZEND_JMPZNZ);
+               CASE(ZEND_JMPZ_EX);
+               CASE(ZEND_JMPNZ_EX);
+               CASE(ZEND_CASE);
+               CASE(ZEND_SWITCH_FREE);
+               CASE(ZEND_BRK);
+               CASE(ZEND_CONT);
+               CASE(ZEND_BOOL);
+               CASE(ZEND_INIT_STRING);
+               CASE(ZEND_ADD_CHAR);
+               CASE(ZEND_ADD_STRING);
+               CASE(ZEND_ADD_VAR);
+               CASE(ZEND_BEGIN_SILENCE);
+               CASE(ZEND_END_SILENCE);
+               CASE(ZEND_INIT_FCALL_BY_NAME);
+               CASE(ZEND_DO_FCALL);
+               CASE(ZEND_DO_FCALL_BY_NAME);
+               CASE(ZEND_RETURN);
+               CASE(ZEND_RECV);
+               CASE(ZEND_RECV_INIT);
+               CASE(ZEND_SEND_VAL);
+               CASE(ZEND_SEND_VAR);
+               CASE(ZEND_SEND_REF);
+               CASE(ZEND_NEW);
+               CASE(ZEND_INIT_NS_FCALL_BY_NAME);
+               CASE(ZEND_FREE);
+               CASE(ZEND_INIT_ARRAY);
+               CASE(ZEND_ADD_ARRAY_ELEMENT);
+               CASE(ZEND_INCLUDE_OR_EVAL);
+               CASE(ZEND_UNSET_VAR);
+               CASE(ZEND_UNSET_DIM);
+               CASE(ZEND_UNSET_OBJ);
+               CASE(ZEND_FE_RESET);
+               CASE(ZEND_FE_FETCH);
+               CASE(ZEND_EXIT);
+               CASE(ZEND_FETCH_R);
+               CASE(ZEND_FETCH_DIM_R);
+               CASE(ZEND_FETCH_OBJ_R);
+               CASE(ZEND_FETCH_W);
+               CASE(ZEND_FETCH_DIM_W);
+               CASE(ZEND_FETCH_OBJ_W);
+               CASE(ZEND_FETCH_RW);
+               CASE(ZEND_FETCH_DIM_RW);
+               CASE(ZEND_FETCH_OBJ_RW);
+               CASE(ZEND_FETCH_IS);
+               CASE(ZEND_FETCH_DIM_IS);
+               CASE(ZEND_FETCH_OBJ_IS);
+               CASE(ZEND_FETCH_FUNC_ARG);
+               CASE(ZEND_FETCH_DIM_FUNC_ARG);
+               CASE(ZEND_FETCH_OBJ_FUNC_ARG);
+               CASE(ZEND_FETCH_UNSET);
+               CASE(ZEND_FETCH_DIM_UNSET);
+               CASE(ZEND_FETCH_OBJ_UNSET);
+               CASE(ZEND_FETCH_DIM_TMP_VAR);
+               CASE(ZEND_FETCH_CONSTANT);
+               CASE(ZEND_GOTO);
+               CASE(ZEND_EXT_STMT);
+               CASE(ZEND_EXT_FCALL_BEGIN);
+               CASE(ZEND_EXT_FCALL_END);
+               CASE(ZEND_EXT_NOP);
+               CASE(ZEND_TICKS);
+               CASE(ZEND_SEND_VAR_NO_REF);
+               CASE(ZEND_CATCH);
+               CASE(ZEND_THROW);
+               CASE(ZEND_FETCH_CLASS);
+               CASE(ZEND_CLONE);
+               CASE(ZEND_RETURN_BY_REF);
+               CASE(ZEND_INIT_METHOD_CALL);
+               CASE(ZEND_INIT_STATIC_METHOD_CALL);
+               CASE(ZEND_ISSET_ISEMPTY_VAR);
+               CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ);
+               CASE(ZEND_PRE_INC_OBJ);
+               CASE(ZEND_PRE_DEC_OBJ);
+               CASE(ZEND_POST_INC_OBJ);
+               CASE(ZEND_POST_DEC_OBJ);
+               CASE(ZEND_ASSIGN_OBJ);
+               CASE(ZEND_INSTANCEOF);
+               CASE(ZEND_DECLARE_CLASS);
+               CASE(ZEND_DECLARE_INHERITED_CLASS);
+               CASE(ZEND_DECLARE_FUNCTION);
+               CASE(ZEND_RAISE_ABSTRACT_ERROR);
+               CASE(ZEND_DECLARE_CONST);
+               CASE(ZEND_ADD_INTERFACE);
+               CASE(ZEND_DECLARE_INHERITED_CLASS_DELAYED);
+               CASE(ZEND_VERIFY_ABSTRACT_CLASS);
+               CASE(ZEND_ASSIGN_DIM);
+               CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ);
+               CASE(ZEND_HANDLE_EXCEPTION);
+               CASE(ZEND_USER_OPCODE);
+#ifdef ZEND_JMP_SET
+               CASE(ZEND_JMP_SET);
+#endif
+               CASE(ZEND_DECLARE_LAMBDA_FUNCTION);
+#ifdef ZEND_ADD_TRAIT
+               CASE(ZEND_ADD_TRAIT);
+#endif
+#ifdef ZEND_BIND_TRAITS
+               CASE(ZEND_BIND_TRAITS);
+#endif
+#ifdef ZEND_SEPARATE
+               CASE(ZEND_SEPARATE);
+#endif
+#ifdef ZEND_QM_ASSIGN_VAR
+               CASE(ZEND_QM_ASSIGN_VAR);
+#endif
+#ifdef ZEND_JMP_SET_VAR
+               CASE(ZEND_JMP_SET_VAR);
+#endif
+               CASE(ZEND_DISCARD_EXCEPTION);
+               CASE(ZEND_YIELD);
+               CASE(ZEND_GENERATOR_RETURN);
+#ifdef ZEND_FAST_CALL
+               CASE(ZEND_FAST_CALL);
+#endif
+#ifdef ZEND_FAST_RET
+               CASE(ZEND_FAST_RET);
+#endif
+#ifdef ZEND_RECV_VARIADIC
+               CASE(ZEND_RECV_VARIADIC);
+#endif
+               CASE(ZEND_OP_DATA);
+               default: return "UNKNOWN";
+       }
+} /* }}} */
diff --git a/phpdbg_opcode.h b/phpdbg_opcode.h
new file mode 100644 (file)
index 0000000..28fc806
--- /dev/null
@@ -0,0 +1,27 @@
+/*
+   +----------------------------------------------------------------------+
+   | PHP Version 5                                                        |
+   +----------------------------------------------------------------------+
+   | Copyright (c) 1997-2013 The PHP Group                                |
+   +----------------------------------------------------------------------+
+   | This source file is subject to version 3.01 of the PHP license,      |
+   | that is bundled with this package in the file LICENSE, and is        |
+   | available through the world-wide-web at the following url:           |
+   | http://www.php.net/license/3_01.txt                                  |
+   | If you did not receive a copy of the PHP license and are unable to   |
+   | obtain it through the world-wide-web, please send a note to          |
+   | license@php.net so we can mail you a copy immediately.               |
+   +----------------------------------------------------------------------+
+   | Authors: Felipe Pena <felipe@php.net>                                |
+   | Authors: Joe Watkins <joe.watkins@live.co.uk>                        |
+   +----------------------------------------------------------------------+
+*/
+
+#ifndef PHPDBG_OPCODE_H
+#define PHPDBG_OPCODE_H
+
+#include "zend_types.h"
+
+const char *phpdbg_decode_opcode(zend_uchar);
+
+#endif /* PHPDBG_OPCODE_H */
index dee88d2534f82aeb57e6d6449546ab3716f540d2..cd432fbf612fb9d917b45db649b31b386785b5d4 100644 (file)
@@ -24,6 +24,7 @@
 #include "phpdbg.h"
 #include "phpdbg_help.h"
 #include "phpdbg_bp.h"
+#include "phpdbg_opcode.h"
 
 static const phpdbg_command_t phpdbg_prompt_commands[];
 
@@ -333,184 +334,10 @@ int phpdbg_interactive(int argc, char **argv TSRMLS_DC) /* {{{ */
        return SUCCESS;
 } /* }}} */
 
-static const char *phpdbg_decode_opcode(zend_uchar opcode TSRMLS_DC) { /* {{{ */
-    switch (opcode) {
-        case ZEND_NOP: return "ZEND_NOP";
-        case ZEND_ADD: return "ZEND_ADD";
-        case ZEND_SUB: return "ZEND_SUB";
-        case ZEND_MUL: return "ZEND_MUL";
-        case ZEND_DIV: return "ZEND_DIV";
-        case ZEND_MOD: return "ZEND_MOD";
-        case ZEND_SL: return "ZEND_SL";
-        case ZEND_SR: return "ZEND_SR";
-        case ZEND_CONCAT: return "ZEND_CONCAT";
-        case ZEND_BW_OR: return "ZEND_BW_OR";
-        case ZEND_BW_AND: return "ZEND_BW_AND";
-        case ZEND_BW_XOR: return "ZEND_BW_XOR";
-        case ZEND_BW_NOT: return "ZEND_BW_NOT";
-        case ZEND_BOOL_NOT: return "ZEND_BOOL_NOT";
-        case ZEND_BOOL_XOR: return "ZEND_BOOL_XOR";
-        case ZEND_IS_IDENTICAL: return "ZEND_IS_IDENTICAL";
-        case ZEND_IS_NOT_IDENTICAL: return "ZEND_IS_NOT_IDENTICAL";
-        case ZEND_IS_EQUAL: return "ZEND_IS_EQUAL";
-        case ZEND_IS_NOT_EQUAL: return "ZEND_IS_NOT_EQUAL";
-        case ZEND_IS_SMALLER: return "ZEND_IS_SMALLER";
-        case ZEND_IS_SMALLER_OR_EQUAL: return "ZEND_IS_SMALLER_OR_EQUAL";
-        case ZEND_CAST: return "ZEND_CAST";
-        case ZEND_QM_ASSIGN: return "ZEND_QM_ASSIGN";
-        case ZEND_ASSIGN_ADD: return "ZEND_ASSIGN_ADD";
-        case ZEND_ASSIGN_SUB: return "ZEND_ASSIGN_SUB";
-        case ZEND_ASSIGN_MUL: return "ZEND_ASSIGN_MUL";
-        case ZEND_ASSIGN_DIV: return "ZEND_ASSIGN_DIV";
-        case ZEND_ASSIGN_MOD: return "ZEND_ASSIGN_MOD";
-        case ZEND_ASSIGN_SL: return "ZEND_ASSIGN_SL";
-        case ZEND_ASSIGN_SR: return "ZEND_ASSIGN_SR";
-        case ZEND_ASSIGN_CONCAT: return "ZEND_ASSIGN_CONCAT";
-        case ZEND_ASSIGN_BW_OR: return "ZEND_ASSIGN_BW_OR";
-        case ZEND_ASSIGN_BW_AND: return "ZEND_ASSIGN_BW_AND";
-        case ZEND_ASSIGN_BW_XOR: return "ZEND_ASSIGN_BW_XOR";
-        case ZEND_PRE_INC: return "ZEND_PRE_INC";
-        case ZEND_PRE_DEC: return "ZEND_PRE_DEC";
-        case ZEND_POST_INC: return "ZEND_POST_INC";
-        case ZEND_POST_DEC: return "ZEND_POST_DEC";
-        case ZEND_ASSIGN: return "ZEND_ASSIGN";
-        case ZEND_ASSIGN_REF: return "ZEND_ASSIGN_REF";
-        case ZEND_ECHO: return "ZEND_ECHO";
-        case ZEND_PRINT: return "ZEND_PRINT";
-        case ZEND_JMP: return "ZEND_JMP";
-        case ZEND_JMPZ: return "ZEND_JMPZ";
-        case ZEND_JMPNZ: return "ZEND_JMPNZ";
-        case ZEND_JMPZNZ: return "ZEND_JMPZNZ";
-        case ZEND_JMPZ_EX: return "ZEND_JMPZ_EX";
-        case ZEND_JMPNZ_EX: return "ZEND_JMPNZ_EX";
-        case ZEND_CASE: return "ZEND_CASE";
-        case ZEND_SWITCH_FREE: return "ZEND_SWITCH_FREE";
-        case ZEND_BRK: return "ZEND_BRK";
-        case ZEND_CONT: return "ZEND_CONT";
-        case ZEND_BOOL: return "ZEND_BOOL";
-        case ZEND_INIT_STRING: return "ZEND_INIT_STRING";
-        case ZEND_ADD_CHAR: return "ZEND_ADD_CHAR";
-        case ZEND_ADD_STRING: return "ZEND_ADD_STRING";
-        case ZEND_ADD_VAR: return "ZEND_ADD_VAR";
-        case ZEND_BEGIN_SILENCE: return "ZEND_BEGIN_SILENCE";
-        case ZEND_END_SILENCE: return "ZEND_END_SILENCE";
-        case ZEND_INIT_FCALL_BY_NAME: return "ZEND_INIT_FCALL_BY_NAME";
-        case ZEND_DO_FCALL: return "ZEND_DO_FCALL";
-        case ZEND_DO_FCALL_BY_NAME: return "ZEND_DO_FCALL_BY_NAME";
-        case ZEND_RETURN: return "ZEND_RETURN";
-        case ZEND_RECV: return "ZEND_RECV";
-        case ZEND_RECV_INIT: return "ZEND_RECV_INIT";
-        case ZEND_SEND_VAL: return "ZEND_SEND_VAL";
-        case ZEND_SEND_VAR: return "ZEND_SEND_VAR";
-        case ZEND_SEND_REF: return "ZEND_SEND_REF";
-        case ZEND_NEW: return "ZEND_NEW";
-        case ZEND_INIT_NS_FCALL_BY_NAME: return "ZEND_INIT_NS_FCALL_BY_NAME";
-        case ZEND_FREE: return "ZEND_FREE";
-        case ZEND_INIT_ARRAY: return "ZEND_INIT_ARRAY";
-        case ZEND_ADD_ARRAY_ELEMENT: return "ZEND_ADD_ARRAY_ELEMENT";
-        case ZEND_INCLUDE_OR_EVAL: return "ZEND_INCLUDE_OR_EVAL";
-        case ZEND_UNSET_VAR: return "ZEND_UNSET_VAR";
-        case ZEND_UNSET_DIM: return "ZEND_UNSET_DIM";
-        case ZEND_UNSET_OBJ: return "ZEND_UNSET_OBJ";
-        case ZEND_FE_RESET: return "ZEND_FE_RESET";
-        case ZEND_FE_FETCH: return "ZEND_FE_FETCH";
-        case ZEND_EXIT: return "ZEND_EXIT";
-        case ZEND_FETCH_R: return "ZEND_FETCH_R";
-        case ZEND_FETCH_DIM_R: return "ZEND_FETCH_DIM_R";
-        case ZEND_FETCH_OBJ_R: return "ZEND_FETCH_OBJ_R";
-        case ZEND_FETCH_W: return "ZEND_FETCH_W";
-        case ZEND_FETCH_DIM_W: return "ZEND_FETCH_DIM_W";
-        case ZEND_FETCH_OBJ_W: return "ZEND_FETCH_OBJ_W";
-        case ZEND_FETCH_RW: return "ZEND_FETCH_RW";
-        case ZEND_FETCH_DIM_RW: return "ZEND_FETCH_DIM_RW";
-        case ZEND_FETCH_OBJ_RW: return "ZEND_FETCH_OBJ_RW";
-        case ZEND_FETCH_IS: return "ZEND_FETCH_IS";
-        case ZEND_FETCH_DIM_IS: return "ZEND_FETCH_DIM_IS";
-        case ZEND_FETCH_OBJ_IS: return "ZEND_FETCH_OBJ_IS";
-        case ZEND_FETCH_FUNC_ARG: return "ZEND_FETCH_FUNC_ARG";
-        case ZEND_FETCH_DIM_FUNC_ARG: return "ZEND_FETCH_DIM_FUNC_ARG";
-        case ZEND_FETCH_OBJ_FUNC_ARG: return "ZEND_FETCH_OBJ_FUNC_ARG";
-        case ZEND_FETCH_UNSET: return "ZEND_FETCH_UNSET";
-        case ZEND_FETCH_DIM_UNSET: return "ZEND_FETCH_DIM_UNSET";
-        case ZEND_FETCH_OBJ_UNSET: return "ZEND_FETCH_OBJ_UNSET";
-        case ZEND_FETCH_DIM_TMP_VAR: return "ZEND_FETCH_DIM_TMP_VAR";
-        case ZEND_FETCH_CONSTANT: return "ZEND_FETCH_CONSTANT";
-        case ZEND_GOTO: return "ZEND_GOTO";
-        case ZEND_EXT_STMT: return "ZEND_EXT_STMT";
-        case ZEND_EXT_FCALL_BEGIN: return "ZEND_EXT_FCALL_BEGIN";
-        case ZEND_EXT_FCALL_END: return "ZEND_EXT_FCALL_END";
-        case ZEND_EXT_NOP: return "ZEND_EXT_NOP";
-        case ZEND_TICKS: return "ZEND_TICKS";
-        case ZEND_SEND_VAR_NO_REF: return "ZEND_SEND_VAR_NO_REF";
-        case ZEND_CATCH: return "ZEND_CATCH";
-        case ZEND_THROW: return "ZEND_THROW";
-        case ZEND_FETCH_CLASS: return "ZEND_FETCH_CLASS";
-        case ZEND_CLONE: return "ZEND_CLONE";
-        case ZEND_RETURN_BY_REF: return "ZEND_RETURN_BY_REF";
-        case ZEND_INIT_METHOD_CALL: return "ZEND_INIT_METHOD_CALL";
-        case ZEND_INIT_STATIC_METHOD_CALL: return "ZEND_INIT_STATIC_METHOD_CALL";
-        case ZEND_ISSET_ISEMPTY_VAR: return "ZEND_ISSET_ISEMPTY_VAR";
-        case ZEND_ISSET_ISEMPTY_DIM_OBJ: return "ZEND_ISSET_ISEMPTY_DIM_OBJ";
-        case ZEND_PRE_INC_OBJ: return "ZEND_PRE_INC_OBJ";
-        case ZEND_PRE_DEC_OBJ: return "ZEND_PRE_DEC_OBJ";
-        case ZEND_POST_INC_OBJ: return "ZEND_POST_INC_OBJ";
-        case ZEND_POST_DEC_OBJ: return "ZEND_POST_DEC_OBJ";
-        case ZEND_ASSIGN_OBJ: return "ZEND_ASSIGN_OBJ";
-        case ZEND_INSTANCEOF: return "ZEND_INSTANCEOF";
-        case ZEND_DECLARE_CLASS: return "ZEND_DECLARE_CLASS";
-        case ZEND_DECLARE_INHERITED_CLASS: return "ZEND_DECLARE_INHERITED_CLASS";
-        case ZEND_DECLARE_FUNCTION: return "ZEND_DECLARE_FUNCTION";
-        case ZEND_RAISE_ABSTRACT_ERROR: return "ZEND_RAISE_ABSTRACT_ERROR";
-        case ZEND_DECLARE_CONST: return "ZEND_DECLARE_CONST";
-        case ZEND_ADD_INTERFACE: return "ZEND_ADD_INTERFACE";
-        case ZEND_DECLARE_INHERITED_CLASS_DELAYED: return "ZEND_DECLARE_INHERITED_CLASS_DELAYED";
-        case ZEND_VERIFY_ABSTRACT_CLASS: return "ZEND_VERIFY_ABSTRACT_CLASS";
-        case ZEND_ASSIGN_DIM: return "ZEND_ASSIGN_DIM";
-        case ZEND_ISSET_ISEMPTY_PROP_OBJ: return "ZEND_ISSET_ISEMPTY_PROP_OBJ";
-        case ZEND_HANDLE_EXCEPTION: return "ZEND_HANDLE_EXCEPTION";
-        case ZEND_USER_OPCODE: return "ZEND_USER_OPCODE";
-#ifdef ZEND_JMP_SET
-        case ZEND_JMP_SET: return "ZEND_JMP_SET";
-#endif
-        case ZEND_DECLARE_LAMBDA_FUNCTION: return "ZEND_DECLARE_LAMBDA_FUNCTION";
-#ifdef ZEND_ADD_TRAIT
-        case ZEND_ADD_TRAIT: return "ZEND_ADD_TRAIT";
-#endif
-#ifdef ZEND_BIND_TRAITS
-        case ZEND_BIND_TRAITS: return "ZEND_BIND_TRAITS";
-#endif
-#ifdef ZEND_SEPARATE
-        case ZEND_SEPARATE: return "ZEND_SEPARATE";
-#endif
-#ifdef ZEND_QM_ASSIGN_VAR
-        case ZEND_QM_ASSIGN_VAR: return "ZEND_QM_ASSIGN_VAR";
-#endif
-#ifdef ZEND_JMP_SET_VAR
-        case ZEND_JMP_SET_VAR: return "ZEND_JMP_SET_VAR";
-#endif
-        case ZEND_DISCARD_EXCEPTION: return "ZEND_DISCARD_EXCEPTION";
-        case ZEND_YIELD: return "ZEND_YIELD";
-        case ZEND_GENERATOR_RETURN: return "ZEND_GENERATOR_RETURN";
-#ifdef ZEND_FAST_CALL
-        case ZEND_FAST_CALL: return "ZEND_FAST_CALL";
-#endif
-#ifdef ZEND_FAST_RET
-        case ZEND_FAST_RET: return "ZEND_FAST_RET";
-#endif
-#ifdef ZEND_RECV_VARIADIC
-        case ZEND_RECV_VARIADIC: return "ZEND_RECV_VARIADIC";
-#endif
-        case ZEND_OP_DATA: return "ZEND_OP_DATA";
-        
-        default: return "UNKNOWN";
-    }
-} /* }}} */
-
 static void phpdbg_print_opline(zend_execute_data *execute_data TSRMLS_DC) { /* {{{ */
     zend_op *opline = execute_data->opline;
 
-    printf(
-        "[OPLINE: %p:%s]\n", opline, phpdbg_decode_opcode(opline->opcode TSRMLS_CC));
+    printf("[OPLINE: %p:%s]\n", opline, phpdbg_decode_opcode(opline->opcode));
 } /* }}} */
 
 void phpdbg_execute_ex(zend_execute_data *execute_data TSRMLS_DC) /* {{{ */