Skip to content

Commit 49e7a47

Browse files
committed
Avoid exception checks when no CVs are used
1 parent a51e74d commit 49e7a47

File tree

2 files changed

+22
-22
lines changed

2 files changed

+22
-22
lines changed

Zend/zend_vm_def.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9563,7 +9563,7 @@ ZEND_VM_HANDLER(205, ZEND_FRAMELESS_ICALL_1, CONST|TMP|VAR|CV, UNUSED)
95639563
SAVE_OPLINE();
95649564
zend_frameless_function_1 function = (zend_frameless_function_1)zend_flf_handlers[opline->extended_value];
95659565
zval *arg1 = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R);
9566-
if (EG(exception)) {
9566+
if (OP1_TYPE == IS_CV && EG(exception)) {
95679567
ZVAL_NULL(EX_VAR(opline->result.var));
95689568
HANDLE_EXCEPTION();
95699569
}
@@ -9583,7 +9583,7 @@ ZEND_VM_HANDLER(206, ZEND_FRAMELESS_ICALL_2, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV)
95839583
zend_frameless_function_2 function = (zend_frameless_function_2)zend_flf_handlers[opline->extended_value];
95849584
zval *arg1 = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R);
95859585
zval *arg2 = GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R);
9586-
if (EG(exception)) {
9586+
if ((OP1_TYPE == IS_CV || OP2_TYPE == IS_CV) && EG(exception)) {
95879587
ZVAL_NULL(EX_VAR(opline->result.var));
95889588
HANDLE_EXCEPTION();
95899589
}

Zend/zend_vm_execute.h

Lines changed: 20 additions & 20 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)