]> granicus.if.org Git - php/commitdiff
Use quick check for first arguments
authorDmitry Stogov <dmitry@zend.com>
Fri, 26 Feb 2016 18:44:28 +0000 (21:44 +0300)
committerDmitry Stogov <dmitry@zend.com>
Fri, 26 Feb 2016 18:44:28 +0000 (21:44 +0300)
Zend/zend_execute.c

index 69326ab4dc4ab8ed321b40c0e144f7a70a8abc42..de5875fdba68ed17effb4a07e4f07989cc5998b5 100644 (file)
@@ -2357,6 +2357,10 @@ ZEND_API void zend_init_execute_data(zend_execute_data *execute_data, zend_op_ar
 static zend_always_inline zend_bool zend_is_by_ref_func_arg_fetch(const zend_op *opline, zend_execute_data *call) /* {{{ */
 {
        uint32_t arg_num = opline->extended_value & ZEND_FETCH_ARG_MASK;
+
+       if (EXPECTED(arg_num <= MAX_ARG_FLAG_NUM)) {
+               return QUICK_ARG_SHOULD_BE_SENT_BY_REF(call->func, arg_num);
+       }
        return ARG_SHOULD_BE_SENT_BY_REF(call->func, arg_num);
 }
 /* }}} */