summaryrefslogtreecommitdiff
path: root/Zend/zend_API.c
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2019-10-25 10:45:42 +0200
committerNikita Popov <nikita.ppv@gmail.com>2019-10-25 10:51:17 +0200
commitc858d17f06179aa25f6e8aa06965313fd519d8e9 (patch)
treede199c2dada0099a344ff595cf024958f98caa5b /Zend/zend_API.c
parentbd7b1afd6eb623a4905673dfc92bb0de62f23edd (diff)
downloadphp-git-c858d17f06179aa25f6e8aa06965313fd519d8e9.tar.gz
Optimize instanceof_function
Split out the simple equality check into an inline function -- this is one of the common cases. Replace instanceof_function_ex with zend_class_implements_interface. There are a few more places where it may be used.
Diffstat (limited to 'Zend/zend_API.c')
-rw-r--r--Zend/zend_API.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/Zend/zend_API.c b/Zend/zend_API.c
index b32c82a1b9..9bc6b12cd6 100644
--- a/Zend/zend_API.c
+++ b/Zend/zend_API.c
@@ -4282,7 +4282,7 @@ ZEND_API zend_bool zend_is_iterable(zval *iterable) /* {{{ */
case IS_ARRAY:
return 1;
case IS_OBJECT:
- return instanceof_function(Z_OBJCE_P(iterable), zend_ce_traversable);
+ return zend_class_implements_interface(Z_OBJCE_P(iterable), zend_ce_traversable);
default:
return 0;
}
@@ -4299,7 +4299,7 @@ ZEND_API zend_bool zend_is_countable(zval *countable) /* {{{ */
return 1;
}
- return instanceof_function(Z_OBJCE_P(countable), zend_ce_countable);
+ return zend_class_implements_interface(Z_OBJCE_P(countable), zend_ce_countable);
default:
return 0;
}