From: Dmitry Stogov Date: Wed, 18 Nov 2020 07:22:25 +0000 (+0300) Subject: Fixed register clobbering X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=feed041fc88d14da20e3bb1db7e17b8982b2687f;p=php Fixed register clobbering --- diff --git a/ext/opcache/jit/zend_jit_x86.dasc b/ext/opcache/jit/zend_jit_x86.dasc index f00ea8cb9c..9187e3d7f0 100644 --- a/ext/opcache/jit/zend_jit_x86.dasc +++ b/ext/opcache/jit/zend_jit_x86.dasc @@ -3137,6 +3137,10 @@ static int zend_jit_trace_begin(dasm_State **Dst, uint32_t trace_num, zend_jit_t } } + if (parent && parent->exit_info[exit_num].flags & ZEND_JIT_EXIT_METHOD_CALL) { + ZEND_REGSET_EXCL(regset, ZREG_R0); + } + current_trace_num = trace_num; | // EG(jit_trace_num) = trace_num;