summaryrefslogtreecommitdiff
path: root/UPGRADING
diff options
context:
space:
mode:
authorNikita Popov <nikic@php.net>2013-03-23 18:06:25 +0100
committerNikita Popov <nikic@php.net>2013-03-23 18:06:25 +0100
commit0cb868c042becc67c53ebba06f66229f72a71898 (patch)
tree146614bd645dddf90b2ac24e6c0766d10e370fac /UPGRADING
parent2e00f7611c29713b7b53ee9006892fc9576fb788 (diff)
downloadphp-git-0cb868c042becc67c53ebba06f66229f72a71898.tar.gz
Move some internal changes from UPGRADING to UPGRADING.INTERNALS
Diffstat (limited to 'UPGRADING')
-rwxr-xr-xUPGRADING31
1 files changed, 0 insertions, 31 deletions
diff --git a/UPGRADING b/UPGRADING
index 19a08e4395..350d147429 100755
--- a/UPGRADING
+++ b/UPGRADING
@@ -29,37 +29,6 @@ PHP 5.5 UPGRADE NOTES
- php_logo_guid(), php_egg_logo_guid(), php_real_logo_guid() and
zend_logo_guid() have been removed
- Removal of Logo GUIDs
-- extensions can't override zend_execute() any more, they should override
- zend_execute_ex() instead. The EG(current_execute_data) is already
- initialized in zend_execute_ex(), so for compatibility extensions
- may need to use EG(current_execute_data)->prev_execute_data instead.
-- removed EG(arg_types_stack), EX(fbc), EX(called_scope), EX(current_object)
-- added op_array->nested_calls. It's calculated at compile time.
-- added EX(call_slots). It is an array to store information about syntaticaly
- nested calls (e.g. foo(bar())). It's preallocated together with execute_data.
-- added EX(call) - pointer to a current calling function. Actually an
- element of EX(call_slots)
-- opcodes INIT_METHOD_CALL, ZEND_INIT_STATIC_METHOD_CALL,
- ZEND_INIT_FCALL_BY_NAME, ZEND_INIT_NS_FCALL_BY_NAME use result.num as
- an index in EX(call_slots)
-- opcode ZEND_NEW uses extended_vallue as an index in EX(call_slots)
-- opcoes ZEND_DO_FCALL and ZEND_DO_FCALL_BY_NAME use op2.num as
- an index in EX(call_slots)
-- added op_array->used_stack. It's calculated at compile time and the
- corresponding stack space is preallocated together with execute_data.
- ZEND_SEND* and ZEND_DO_FCALL* don't need to check for stack overflow
- anymore.
-- Removed execute_data->Ts field. The VM temporary variables always allocated
- immediately before execute_data structure. Now they are accessed by offset
- from the execute_data base pointer (instead of execute_data->Ts). Compiler
- stores new offsets in op_array->opcodes[*].op?.num. You can use macros
- EX_TMP_VAR() and EX_TMP_VAR_NUM() to access temp_variable by offset or
- number. You can convert number to offset using EX_TMP_VAR_NUM(0, num) or
- offset to number (EX_TMP_VAR_NUM(0,0)-EX_TMP_VAR(0,offset)).
-- Removed execute_data->CVs field. The VM compiled variables always allocated
- immediately after execute_data structure. Now they are accessed by offset
- from the execute_data base pointer (instead of execute_data->CVs). You can
- use macros EX_CV_NUM() to access compiled variables by number.
========================================
2. New Features