com php-src: Removed zend_execute_data->prev_nested_c all. Reuse prev_execute_data instead.: Zend/z end_compile.h Zend/zend_execute.h Zend/zend_execu
te_API.c Zend/zend_generators.c Zend/zend_vm_de f.h Zend/zend_vm_execute.h
| From: | Dmitry Stogov | Date: | Wed, 01 Oct 2014 06:46:13 +0000 |
| Subject: | com php-src: Removed zend_execute_data->prev_nested_c all. Reuse prev_execute_data instead.: Zend/z end_compile.h Zend/zend_execute.h Zend/zend_execu te_API.c Zend/zend_generators.c Zend/zend_vm_de f.h Zend/zend_vm_execute.h |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-82027@lists.php.net to get a copy of this message | ||
Commit: 9f7564b12b6e57d018bbc158e00f41499017d29e
Author: Dmitry Stogov <dmitry@zend.com> Wed, 1 Oct 2014 10:46:13 +0400
Parents: 63dc9bbc027dc22ad4ef580c964744cd7db7fc33
Branches: master
Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=9f7564b12b6e57d018bbc158e00f41499017d29e
Log:
Removed zend_execute_data->prev_nested_call. Reuse prev_execute_data instead.
Changed paths:
M Zend/zend_compile.h
M Zend/zend_execute.h
M Zend/zend_execute_API.c
M Zend/zend_generators.c
M Zend/zend_vm_def.h
M Zend/zend_vm_execute.h
Diff:
diff --git a/Zend/zend_compile.h b/Zend/zend_compile.h
index 573f1fe..cf1256a 100644
--- a/Zend/zend_compile.h
+++ b/Zend/zend_compile.h
@@ -367,7 +367,6 @@ struct _zend_execute_data {
zend_uchar frame_kind;
zend_class_entry *called_scope;
zend_object *object;
- zend_execute_data *prev_nested_call;
zend_execute_data *prev_execute_data;
zval *return_value;
zend_class_entry *scope; /* function scope (self) */
diff --git a/Zend/zend_execute.h b/Zend/zend_execute.h
index e5ab12d..ce01e51 100644
--- a/Zend/zend_execute.h
+++ b/Zend/zend_execute.h
@@ -219,7 +219,7 @@ static zend_always_inline zend_execute_data *zend_vm_stack_push_call_frame(zend_
call->flags = flags;
call->called_scope = called_scope;
call->object = object;
- call->prev_nested_call = prev;
+ call->prev_execute_data = prev;
return call;
}
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c
index f59a101..b528bd0 100644
--- a/Zend/zend_execute_API.c
+++ b/Zend/zend_execute_API.c
@@ -703,7 +703,6 @@ int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache TS
dummy_execute_data = *EG(current_execute_data);
dummy_execute_data.prev_execute_data = EG(current_execute_data);
dummy_execute_data.call = NULL;
- dummy_execute_data.prev_nested_call = NULL;
dummy_execute_data.opline = NULL;
dummy_execute_data.func = NULL;
EG(current_execute_data) = &dummy_execute_data;
diff --git a/Zend/zend_generators.c b/Zend/zend_generators.c
index b038600..4c64cb7 100644
--- a/Zend/zend_generators.c
+++ b/Zend/zend_generators.c
@@ -71,7 +71,7 @@ static void zend_generator_cleanup_unfinished_execution(zend_generator *generato
if (execute_data->call->object) {
OBJ_RELEASE(execute_data->call->object);
}
- execute_data->call = execute_data->call->prev_nested_call;
+ execute_data->call = execute_data->call->prev_execute_data;
}
}
/* }}} */
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index 02c9347..c215fc3 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -2534,7 +2534,7 @@ ZEND_VM_HANDLER(60, ZEND_DO_FCALL, ANY, ANY)
zend_function *fbc = call->func;
SAVE_OPLINE();
- EX(call) = call->prev_nested_call;
+ EX(call) = call->prev_execute_data;
if (UNEXPECTED((fbc->common.fn_flags & (ZEND_ACC_ABSTRACT|ZEND_ACC_DEPRECATED)) != 0)) {
if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_ABSTRACT) != 0)) {
zend_error_noreturn(E_ERROR, "Cannot call abstract method %s::%s()",
fbc->common.scope->name->val, fbc->common.function_name->val);
@@ -5409,7 +5409,7 @@ ZEND_VM_HANDLER(149, ZEND_HANDLE_EXCEPTION, ANY, ANY)
}
OBJ_RELEASE(call->object);
}
- EX(call) = call->prev_nested_call;
+ EX(call) = call->prev_execute_data;
zend_vm_stack_free_call_frame(call TSRMLS_CC);
call = EX(call);
} while (call);
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 17858c2..cb6fd8b 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -495,7 +495,7 @@ static int ZEND_FASTCALL ZEND_DO_FCALL_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
zend_function *fbc = call->func;
SAVE_OPLINE();
- EX(call) = call->prev_nested_call;
+ EX(call) = call->prev_execute_data;
if (UNEXPECTED((fbc->common.fn_flags & (ZEND_ACC_ABSTRACT|ZEND_ACC_DEPRECATED)) != 0)) {
if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_ABSTRACT) != 0)) {
zend_error_noreturn(E_ERROR, "Cannot call abstract method %s::%s()",
fbc->common.scope->name->val, fbc->common.function_name->val);
@@ -1312,7 +1312,7 @@ static int ZEND_FASTCALL
ZEND_HANDLE_EXCEPTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER
}
OBJ_RELEASE(call->object);
}
- EX(call) = call->prev_nested_call;
+ EX(call) = call->prev_execute_data;
zend_vm_stack_free_call_frame(call TSRMLS_CC);
call = EX(call);
} while (call);