From: Dmitry Stogov Date: Mon, 27 Apr 2020 12:59:37 +0000 (+0300) Subject: Fixed incorrect side exit address X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=29fc6846d8c796aad6b21df9880b7957e067f5fc;p=php Fixed incorrect side exit address --- diff --git a/ext/opcache/jit/zend_jit_x86.dasc b/ext/opcache/jit/zend_jit_x86.dasc index 173b831642..047287b006 100644 --- a/ext/opcache/jit/zend_jit_x86.dasc +++ b/ext/opcache/jit/zend_jit_x86.dasc @@ -4538,7 +4538,7 @@ static int zend_jit_fetch_dimension_address_inner(dasm_State **Dst, const zend_o zend_jit_addr res_addr = ZEND_ADDR_MEM_ZVAL(ZREG_FP, opline->result.var); const void *exit_addr = NULL; - if (zend_jit_trigger == ZEND_JIT_ON_HOT_TRACE && type == BP_VAR_R) { + if (zend_jit_trigger == ZEND_JIT_ON_HOT_TRACE && (type == BP_VAR_R || type == BP_VAR_RW)) { int32_t exit_point = zend_jit_trace_get_exit_point(opline, opline, NULL); exit_addr = zend_jit_trace_get_exit_addr(exit_point); if (!exit_addr) {