diff options
| author | Dmitry Stogov <dmitry@zend.com> | 2014-03-19 17:00:28 +0400 |
|---|---|---|
| committer | Dmitry Stogov <dmitry@zend.com> | 2014-03-19 17:00:28 +0400 |
| commit | b7938ab1bd765897bd6f08a48a8aea494a961ea9 (patch) | |
| tree | 22f8034d42dfac8f03b4bb6d6573e5a7f6361ac8 /Zend/zend_vm_def.h | |
| parent | 2e3e96b24bb1c547362af53b952f823f451e6bce (diff) | |
| download | php-git-b7938ab1bd765897bd6f08a48a8aea494a961ea9.tar.gz | |
Refactored GC (incomplete)
Diffstat (limited to 'Zend/zend_vm_def.h')
| -rw-r--r-- | Zend/zend_vm_def.h | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 14483a427f..8076ba6caa 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -405,7 +405,6 @@ ZEND_VM_HELPER_EX(zend_binary_assign_op_obj_helper, VAR|UNUSED|CV, CONST|TMP|VAR zval *value = Z_OBJ_HT_P(z)->get(z TSRMLS_CC); if (Z_REFCOUNT_P(z) == 0) { - GC_REMOVE_ZVAL_FROM_BUFFER(z); zval_dtor(z); } z = value; @@ -652,7 +651,6 @@ ZEND_VM_HELPER_EX(zend_pre_incdec_property_helper, VAR|UNUSED|CV, CONST|TMP|VAR| zval *value = Z_OBJ_HT_P(z)->get(z TSRMLS_CC); if (Z_REFCOUNT_P(z) == 0) { - GC_REMOVE_ZVAL_FROM_BUFFER(z); zval_dtor(z); } z = value; @@ -750,7 +748,6 @@ ZEND_VM_HELPER_EX(zend_post_incdec_property_helper, VAR|UNUSED|CV, CONST|TMP|VAR zval *value = Z_OBJ_HT_P(z)->get(z TSRMLS_CC); if (Z_REFCOUNT_P(z) == 0) { - GC_REMOVE_ZVAL_FROM_BUFFER(z); zval_dtor(z); } z = value; @@ -4368,16 +4365,11 @@ ZEND_VM_HANDLER(77, ZEND_FE_RESET, CONST|TMP|VAR|CV, ANY) //??? dereference if (Z_ISREF_P(array_ref)) { if (Z_REFCOUNT_P(array_ref) == 1) { - zend_reference *ref = Z_REF_P(array_ref); - ZVAL_COPY(array_ref, &ref->val); - efree(ref); + ZVAL_UNREF(array_ref); array_ptr = array_ref; - } else { - Z_ADDREF_P(array_ref); } - } else { - Z_ADDREF_P(array_ref); } + Z_ADDREF_P(array_ref); } } } |
