summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2020-06-16 19:20:08 +0300
committerDmitry Stogov <dmitry@zend.com>2020-06-16 19:20:08 +0300
commit9ff3230c20f27ac35788aca72f16ff928a25f81b (patch)
tree6e4ef67a11e08f51a325d016ab5254796129cd90
parent626ccc45e4f35b0bbc7b3dbac77df2aa9882e73f (diff)
downloadphp-git-9ff3230c20f27ac35788aca72f16ff928a25f81b.tar.gz
Merge exit points
-rw-r--r--ext/opcache/jit/zend_jit_x86.dasc10
1 files changed, 1 insertions, 9 deletions
diff --git a/ext/opcache/jit/zend_jit_x86.dasc b/ext/opcache/jit/zend_jit_x86.dasc
index cce456cf04..20ec35fa7e 100644
--- a/ext/opcache/jit/zend_jit_x86.dasc
+++ b/ext/opcache/jit/zend_jit_x86.dasc
@@ -11362,7 +11362,7 @@ static zend_bool zend_jit_fetch_reference(dasm_State **Dst, const zend_op *oplin
{
zend_jit_addr var_addr = *var_addr_ptr;
uint32_t var_info = *var_info_ptr;
- int32_t exit_point = zend_jit_trace_get_exit_point(opline, opline, NULL, ZEND_JIT_EXIT_TO_VM);
+ int32_t exit_point = zend_jit_trace_get_exit_point(opline, opline, NULL, 0);
const void *exit_addr = zend_jit_trace_get_exit_addr(exit_point);
if (!exit_addr) {
@@ -11379,16 +11379,8 @@ static zend_bool zend_jit_fetch_reference(dasm_State **Dst, const zend_op *oplin
var_type &= ~IS_TRACE_REFERENCE;
if (var_type != IS_UNKNOWN
&& (var_info & (MAY_BE_ANY|MAY_BE_UNDEF)) != (1 << var_type)) {
- exit_point = zend_jit_trace_get_exit_point(opline, opline, NULL, 0);
- exit_addr = zend_jit_trace_get_exit_addr(exit_point);
-
- if (!exit_addr) {
- return 0;
- }
-
| IF_NOT_Z_TYPE FCARG1a, var_type, &exit_addr
- //var_info = zend_jit_trace_type_to_info_ex(var_type, var_info);
ZEND_ASSERT(var_info & (1 << var_type));
if (var_type < IS_STRING) {
var_info = (1 << var_type);