diff options
Diffstat (limited to 'sapi/fuzzer/fuzzer-execute.c')
-rw-r--r-- | sapi/fuzzer/fuzzer-execute.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sapi/fuzzer/fuzzer-execute.c b/sapi/fuzzer/fuzzer-execute.c index bc903bbe63..f9faf90dea 100644 --- a/sapi/fuzzer/fuzzer-execute.c +++ b/sapi/fuzzer/fuzzer-execute.c @@ -22,6 +22,10 @@ #define MAX_STEPS 1000 static uint32_t steps_left; +/* Because the fuzzer is always compiled with clang, + * we can assume that we don't use global registers / hybrid VM. */ +typedef int (ZEND_FASTCALL *opcode_handler_t)(zend_execute_data *); + void fuzzer_execute_ex(zend_execute_data *execute_data) { while (1) { int ret; @@ -32,7 +36,7 @@ void fuzzer_execute_ex(zend_execute_data *execute_data) { zend_bailout(); } - if ((ret = ((user_opcode_handler_t) EX(opline)->handler)(execute_data)) != 0) { + if ((ret = ((opcode_handler_t) EX(opline)->handler)(execute_data)) != 0) { if (ret > 0) { execute_data = EG(current_execute_data); } else { |