]> granicus.if.org Git - php/commitdiff
Removed redundand checks from release build
authorDmitry Stogov <dmitry@zend.com>
Thu, 13 Dec 2012 10:46:44 +0000 (14:46 +0400)
committerDmitry Stogov <dmitry@zend.com>
Thu, 13 Dec 2012 10:46:44 +0000 (14:46 +0400)
Zend/zend.h
Zend/zend_execute.c
Zend/zend_execute.h
Zend/zend_execute_API.c

index d2a4ef69578683785d7f3787ef3bcc67aa5c68cd..eceae521b6ed6e3330e6023b87a16ed6834ec911 100644 (file)
@@ -225,6 +225,7 @@ char *alloca ();
 #define ZEND_FILE_LINE_EMPTY_CC                        , ZEND_FILE_LINE_EMPTY_C
 #define ZEND_FILE_LINE_ORIG_RELAY_C            __zend_orig_filename, __zend_orig_lineno
 #define ZEND_FILE_LINE_ORIG_RELAY_CC   , ZEND_FILE_LINE_ORIG_RELAY_C
+#define ZEND_ASSERT(c)                                 assert(c)
 #else
 #define ZEND_FILE_LINE_D
 #define ZEND_FILE_LINE_DC
@@ -238,6 +239,7 @@ char *alloca ();
 #define ZEND_FILE_LINE_EMPTY_CC
 #define ZEND_FILE_LINE_ORIG_RELAY_C
 #define ZEND_FILE_LINE_ORIG_RELAY_CC
+#define ZEND_ASSERT(c)
 #endif /* ZEND_DEBUG */
 
 #ifdef ZTS
index e6034ba2030da34ecdd03632bdd434b8aea1b911..c0b1d0203b8fa58bcf97ea96bb35d2dfacade6bb 100644 (file)
@@ -86,11 +86,10 @@ static zend_always_inline void zend_pzval_unlock_func(zval *z, zend_free_op *sho
 static zend_always_inline void zend_pzval_unlock_free_func(zval *z TSRMLS_DC)
 {
        if (!Z_DELREF_P(z)) {
-               if (z != &EG(uninitialized_zval)) {
-                       GC_REMOVE_ZVAL_FROM_BUFFER(z);
-                       zval_dtor(z);
-                       efree(z);
-               }
+               ZEND_ASSERT(z != &EG(uninitialized_zval));
+               GC_REMOVE_ZVAL_FROM_BUFFER(z);
+               zval_dtor(z);
+               efree(z);
        }
 }
 
index 963decde2a831bbc9b6d1801422fbc2f01e4f974..ab560b3da341b48964463716f8cf72d1fe08292f 100644 (file)
@@ -61,15 +61,6 @@ ZEND_API void zend_execute(zend_op_array *op_array TSRMLS_DC);
 ZEND_API void execute_ex(zend_execute_data *execute_data TSRMLS_DC);
 ZEND_API void execute_internal(zend_execute_data *execute_data_ptr, struct _zend_fcall_info *fci, int return_value_used TSRMLS_DC);
 ZEND_API int zend_is_true(zval *op);
-#define safe_free_zval_ptr(p) safe_free_zval_ptr_rel(p ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC)
-static zend_always_inline void safe_free_zval_ptr_rel(zval *p ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)
-{
-       TSRMLS_FETCH();
-
-       if (p!=EG(uninitialized_zval_ptr)) {
-               FREE_ZVAL_REL(p);
-       }
-}
 ZEND_API int zend_lookup_class(const char *name, int name_length, zend_class_entry ***ce TSRMLS_DC);
 ZEND_API int zend_lookup_class_ex(const char *name, int name_length, const zend_literal *key, int use_autoload, zend_class_entry ***ce TSRMLS_DC);
 ZEND_API int zend_eval_string(char *str, zval *retval_ptr, char *string_name TSRMLS_DC);
@@ -85,11 +76,10 @@ static zend_always_inline void i_zval_ptr_dtor(zval *zval_ptr ZEND_FILE_LINE_DC)
        if (!Z_DELREF_P(zval_ptr)) {
                TSRMLS_FETCH();
 
-               if (zval_ptr != &EG(uninitialized_zval)) {
-                       GC_REMOVE_ZVAL_FROM_BUFFER(zval_ptr);
-                       zval_dtor(zval_ptr);
-                       efree_rel(zval_ptr);
-               }
+               ZEND_ASSERT(zval_ptr != &EG(uninitialized_zval));
+               GC_REMOVE_ZVAL_FROM_BUFFER(zval_ptr);
+               zval_dtor(zval_ptr);
+               efree_rel(zval_ptr);
        } else {
                TSRMLS_FETCH();
 
index 4a635b230d9d1f98485a5053753101c4d899decb..042b83c7672a00547c90f0d02562942bb5229f38 100644 (file)
@@ -425,27 +425,7 @@ ZEND_API zend_bool zend_is_executing(TSRMLS_D) /* {{{ */
 
 ZEND_API void _zval_ptr_dtor(zval **zval_ptr ZEND_FILE_LINE_DC) /* {{{ */
 {
-#if DEBUG_ZEND>=2
-       printf("Reducing refcount for %x (%x): %d->%d\n", *zval_ptr, zval_ptr, Z_REFCOUNT_PP(zval_ptr), Z_REFCOUNT_PP(zval_ptr) - 1);
-#endif
-       Z_DELREF_PP(zval_ptr);
-       if (Z_REFCOUNT_PP(zval_ptr) == 0) {
-               TSRMLS_FETCH();
-
-               if (*zval_ptr != &EG(uninitialized_zval)) {
-                       GC_REMOVE_ZVAL_FROM_BUFFER(*zval_ptr);
-                       zval_dtor(*zval_ptr);
-                       efree_rel(*zval_ptr);
-               }
-       } else {
-               TSRMLS_FETCH();
-
-               if (Z_REFCOUNT_PP(zval_ptr) == 1) {
-                       Z_UNSET_ISREF_PP(zval_ptr);
-               }
-
-               GC_ZVAL_CHECK_POSSIBLE_ROOT(*zval_ptr);
-       }
+       i_zval_ptr_dtor(*zval_ptr ZEND_FILE_LINE_RELAY_CC);
 }
 /* }}} */