summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2020-07-21 12:21:47 +0300
committerDmitry Stogov <dmitry@zend.com>2020-07-21 12:21:47 +0300
commitbb9e3dd6cc26da51a9ef55cdb18baf90f5ba2bda (patch)
tree16bfa3ef2037bf7a556af423ad968b7f6e8568b2
parentd9227a1b44795a5e87f590fe9757e9ef7e597b89 (diff)
downloadphp-git-bb9e3dd6cc26da51a9ef55cdb18baf90f5ba2bda.tar.gz
Use different temporary register
-rw-r--r--ext/opcache/jit/zend_jit_x86.dasc5
1 files changed, 3 insertions, 2 deletions
diff --git a/ext/opcache/jit/zend_jit_x86.dasc b/ext/opcache/jit/zend_jit_x86.dasc
index 603fab31cc..8e8ec5694a 100644
--- a/ext/opcache/jit/zend_jit_x86.dasc
+++ b/ext/opcache/jit/zend_jit_x86.dasc
@@ -3226,7 +3226,8 @@ static int zend_jit_trace_handler(dasm_State **Dst, const zend_op_array *op_arra
}
| EXT_CALL handler, r0
if (may_throw) {
- zend_jit_check_exception(Dst);
+ | MEM_OP2_1_ZTS cmp, aword, executor_globals, exception, 0, r1
+ | jne ->exception_handler
}
while (trace->op != ZEND_JIT_TRACE_VM && trace->op != ZEND_JIT_TRACE_END) {
@@ -3241,7 +3242,7 @@ static int zend_jit_trace_handler(dasm_State **Dst, const zend_op_array *op_arra
opline->opcode == ZEND_DO_FCALL_BY_NAME ||
opline->opcode == ZEND_DO_FCALL ||
opline->opcode == ZEND_GENERATOR_CREATE) {
- | MEM_OP2_2_ZTS mov, FP, aword, executor_globals, current_execute_data, r0
+ | MEM_OP2_2_ZTS mov, FP, aword, executor_globals, current_execute_data, r1
}
}