summaryrefslogtreecommitdiff
path: root/Zend/zend_objects.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2018-10-23 12:46:44 +0300
committerDmitry Stogov <dmitry@zend.com>2018-10-23 12:46:44 +0300
commit6f91090f6ae42901d3eef48d7405bebeaff2ce21 (patch)
tree1f9d9db924d363e33fd9cd6467f63262476efc75 /Zend/zend_objects.c
parentfd080a06d84d9deb1a6a6be3b1e9a5eeff2fc77b (diff)
downloadphp-git-6f91090f6ae42901d3eef48d7405bebeaff2ce21.tar.gz
Inlining in the most frequently used code paths
Diffstat (limited to 'Zend/zend_objects.c')
-rw-r--r--Zend/zend_objects.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/Zend/zend_objects.c b/Zend/zend_objects.c
index d979d733ef..ae178132a3 100644
--- a/Zend/zend_objects.c
+++ b/Zend/zend_objects.c
@@ -25,7 +25,7 @@
#include "zend_interfaces.h"
#include "zend_exceptions.h"
-ZEND_API void ZEND_FASTCALL zend_object_std_init(zend_object *object, zend_class_entry *ce)
+static zend_always_inline void _zend_object_std_init(zend_object *object, zend_class_entry *ce)
{
GC_SET_REFCOUNT(object, 1);
GC_TYPE_INFO(object) = IS_OBJECT | (GC_COLLECTABLE << GC_FLAGS_SHIFT);
@@ -37,6 +37,11 @@ ZEND_API void ZEND_FASTCALL zend_object_std_init(zend_object *object, zend_class
}
}
+ZEND_API void ZEND_FASTCALL zend_object_std_init(zend_object *object, zend_class_entry *ce)
+{
+ _zend_object_std_init(object, ce);
+}
+
ZEND_API void zend_object_std_dtor(zend_object *object)
{
zval *p, *end;
@@ -174,7 +179,7 @@ ZEND_API zend_object* ZEND_FASTCALL zend_objects_new(zend_class_entry *ce)
{
zend_object *object = emalloc(sizeof(zend_object) + zend_object_properties_size(ce));
- zend_object_std_init(object, ce);
+ _zend_object_std_init(object, ce);
object->handlers = &std_object_handlers;
return object;
}