summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/opcache/jit/zend_jit_trace.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/ext/opcache/jit/zend_jit_trace.c b/ext/opcache/jit/zend_jit_trace.c
index 41409dd953..fd692b5ebc 100644
--- a/ext/opcache/jit/zend_jit_trace.c
+++ b/ext/opcache/jit/zend_jit_trace.c
@@ -3125,6 +3125,9 @@ static const void *zend_jit_trace(zend_jit_trace_rec *trace_buffer, uint32_t par
if (opline->op1_type == IS_CONST) {
zend_jit_trace_send_type(opline, frame->call, Z_TYPE_P(RT_CONSTANT(opline, opline->op1)));
} else if (op1_type != IS_UNKNOWN) {
+ if (op1_type == IS_UNDEF) {
+ op1_type = IS_NULL;
+ }
zend_jit_trace_send_type(opline, frame->call, op1_type);
}
}
@@ -3169,6 +3172,9 @@ static const void *zend_jit_trace(zend_jit_trace_rec *trace_buffer, uint32_t par
goto done;
}
if (op1_type != IS_UNKNOWN) {
+ if (op1_type == IS_UNDEF) {
+ op1_type = IS_NULL;
+ }
zend_jit_trace_send_type(opline, frame->call, op1_type);
}
}