summaryrefslogtreecommitdiff
path: root/Zend/zend_operators.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-10-24 17:50:53 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-10-24 17:50:53 +0200
commit374cbfe568aef2053a19c98461dfe36d8623a567 (patch)
tree9ce082ae99e6a50cee275d952dcad69ee610f64f /Zend/zend_operators.c
parent19bea48c9a752f9431d31bb8e3acbc28f728e798 (diff)
parentc63a0e005abe4b00ab097dc47ca53d20788a6361 (diff)
downloadphp-git-374cbfe568aef2053a19c98461dfe36d8623a567.tar.gz
Merge branch 'PHP-7.4'
* PHP-7.4: Optimize instanceof_class/interface
Diffstat (limited to 'Zend/zend_operators.c')
-rw-r--r--Zend/zend_operators.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/Zend/zend_operators.c b/Zend/zend_operators.c
index 7e3bd1076d..eb27750df9 100644
--- a/Zend/zend_operators.c
+++ b/Zend/zend_operators.c
@@ -2177,12 +2177,12 @@ ZEND_API int ZEND_FASTCALL is_smaller_or_equal_function(zval *result, zval *op1,
static zend_always_inline zend_bool instanceof_class(const zend_class_entry *instance_ce, const zend_class_entry *ce) /* {{{ */
{
- while (instance_ce) {
+ do {
if (instance_ce == ce) {
return 1;
}
instance_ce = instance_ce->parent;
- }
+ } while (instance_ce);
return 0;
}
/* }}} */
@@ -2199,7 +2199,7 @@ static zend_bool ZEND_FASTCALL instanceof_interface(const zend_class_entry *inst
}
}
}
- return instanceof_class(instance_ce, ce);
+ return instance_ce == ce;
}
/* }}} */