diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index dc2e0d4953b..02a04472727 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -20,34 +20,25 @@ #define ZEND_INTENSIVE_DEBUGGING 0 -#include -#include - -#include "zend.h" -#include "zend_compile.h" #include "zend_execute.h" -#include "zend_API.h" -#include "zend_ptr_stack.h" +#include "zend_API.h" // for ZEND_FUNCTION() +#include "zend_arena.h" #include "zend_constants.h" #include "zend_extensions.h" #include "zend_ini.h" #include "zend_exceptions.h" -#include "zend_interfaces.h" #include "zend_closures.h" -#include "zend_generators.h" -#include "zend_vm.h" -#include "zend_dtrace.h" -#include "zend_inheritance.h" -#include "zend_type_info.h" +#include "zend_generators.h" // for zend_ce_generator +#include "zend_inheritance.h" // for zend_do_link_class() #include "zend_smart_str.h" #include "zend_observer.h" -#include "zend_system_id.h" -#include "zend_call_stack.h" -#include "Optimizer/zend_func_info.h" /* Virtual current working directory support */ #include "zend_virtual_cwd.h" +#include +#include + #ifdef HAVE_GCC_GLOBAL_REGS # if defined(__GNUC__) && ZEND_GCC_VERSION >= 4008 && defined(i386) # define ZEND_VM_FP_GLOBAL_REG "%esi" @@ -5283,6 +5274,9 @@ static zend_always_inline zend_execute_data *_zend_vm_stack_push_call_frame(uint /* This callback disables optimization of "vm_stack_data" variable in VM */ ZEND_API void (ZEND_FASTCALL *zend_touch_vm_stack_data)(void *vm_stack_data) = NULL; +#include "zend_fibers.h" // needed by zend_vm_execute.h +#include "zend_interfaces.h" // needed by zend_vm_execute.h +#include "zend_objects.h" // needed by zend_vm_execute.h #include "zend_vm_execute.h" ZEND_API zend_result zend_set_user_opcode_handler(zend_uchar opcode, user_opcode_handler_t handler) diff --git a/Zend/zend_execute.h b/Zend/zend_execute.h index de53305090c..b7aa5276471 100644 --- a/Zend/zend_execute.h +++ b/Zend/zend_execute.h @@ -21,10 +21,15 @@ #ifndef ZEND_EXECUTE_H #define ZEND_EXECUTE_H -#include "zend_compile.h" -#include "zend_hash.h" -#include "zend_operators.h" -#include "zend_variables.h" +#include "zend_compile.h" // for zend_op_array +#include "zend_list.h" // for zend_rsrc_list_get_rsrc_type() +#include "zend_portability.h" // for BEGIN_EXTERN_C +#include "zend_types.h" // for zend_execute_data + +#if ZEND_DEBUG +#include "zend_globals.h" // for struct _zend_executor_globals +#include "zend_globals_macros.h" // for EG() +#endif BEGIN_EXTERN_C() struct _zend_fcall_info; @@ -182,6 +187,7 @@ ZEND_API zend_result ZEND_FASTCALL zval_update_constant_ex(zval *pp, zend_class_ ZEND_API zend_result ZEND_FASTCALL zval_update_constant_with_ctx(zval *pp, zend_class_entry *scope, zend_ast_evaluate_ctx *ctx); /* dedicated Zend executor functions - do not use! */ +typedef struct _zend_vm_stack *zend_vm_stack; struct _zend_vm_stack { zval *top; zval *end; diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 17c3caae214..066c45d1eb4 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -18,26 +18,18 @@ +----------------------------------------------------------------------+ */ -#include -#include - -#include "zend.h" -#include "zend_compile.h" -#include "zend_execute.h" #include "zend_API.h" -#include "zend_stack.h" #include "zend_constants.h" #include "zend_extensions.h" #include "zend_exceptions.h" #include "zend_closures.h" -#include "zend_generators.h" -#include "zend_vm.h" -#include "zend_float.h" #include "zend_fibers.h" #include "zend_weakrefs.h" -#include "zend_inheritance.h" #include "zend_observer.h" -#include "zend_call_stack.h" + +#include +#include + #ifdef HAVE_SYS_TIME_H #include #endif