History log of /PHP-8.1/Zend/zend_execute.h (Results 151 – 175 of 402)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# a759967d 16-Apr-2015 Dmitry Stogov

Mark call frames to closures with ZEND_CALL_CLOSURE flag to avoid expensive check at zend_leave_helper()

Revision tags: php-5.6.8
# 6aee1ee4 15-Apr-2015 Dmitry Stogov

Optimization of stack-frame construction

Revision tags: php-5.5.24, php-5.4.40
# cddb5eb3 13-Apr-2015 Dmitry Stogov

Fixed memory leak

# adcf0c60 02-Apr-2015 Dmitry Stogov

Improved reference counting

# ea09a9fa 01-Apr-2015 Dmitry Stogov

Convert fatal errors into EngineExceptions
Make zval_update_constant_ex(), zval_update_constant(), zend_update_class_constants() and zend_ast_evaluate() return SUCCESS or FAILURE.

Revision tags: php-5.6.8RC1, php-5.5.24RC1, php-5.6.7
# 0529eeb4 18-Mar-2015 Anthony Ferrara

Fix executor issue with ignoring strict types, which cleans up a bunch of errors. Additionally fix the expected error of 2 unrelated tests that was caused by a change to the core error messages

# 7feebead 18-Mar-2015 Anthony Ferrara

Refactor error implementation significantly to centralize error mode behavior. Add zend_internal_type_error() function

Revision tags: php-5.5.23, php-5.4.39
# 6289f7e5 12-Mar-2015 Dmitry Stogov

Executor cleanup: fix GOTO and SWITCH VMs, remove aility to build additional PHP-5.0 compatible VM, hide executor implementation details.

Revision tags: php-5.6.7RC1
# 6d065a85 05-Mar-2015 Dmitry Stogov

Avoid repeatable strlen() calls

Revision tags: php-5.5.23RC1, POST_PHP7_EREG_MYSQL_REMOVALS, PRE_PHP7_EREG_MYSQL_REMOVALS
# 5f278e4d 24-Feb-2015 Dmitry Stogov

Use cache_slot offsets instead of indexes (simplify run-time instructions)

Revision tags: php-5.6.6, php-5.5.22, php-5.4.38, POST_PHP7_REMOVALS, PRE_PHP7_REMOVALS, php-5.6.6RC1, php-5.5.22RC1, php-5.5.21, php-5.6.5, php-5.4.37
# c8576c5a 08-Jan-2015 Levi Morrison

Implement return types

RFC is documented here: https://wiki.php.net/rfc/return_types

# fc33f52d 15-Jan-2015 Xinchen Hui

bump year

Revision tags: php-5.5.21RC1, php-5.6.5RC1
# b7a7b1a6 03-Jan-2015 Stanislav Malyshev

trailing whitespace removal

# ab0b15b8 26-Dec-2014 Dmitry Stogov

Optimized destruction of extra arguments passed to user functions.
If no refcounted arguments are passed, then destruction code is not triggered at all.
(Full rebuild required)

# 2646f7bc 22-Dec-2014 Dmitry Stogov

Don't count variadic argument in zend_func.common.num_args. This allows faster CALL/RETURN code.

Revision tags: POST_NATIVE_TLS_MERGE, PRE_NATIVE_TLS_MERGE
# 9c354ba1 17-Dec-2014 Anatol Belski

Merge remote-tracking branch 'origin/master' into native-tls

* origin/master:
Better fix for #68601 for perf https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3f

Merge remote-tracking branch 'origin/master' into native-tls

* origin/master:
Better fix for #68601 for perf https://bitbucket.org/libgd/gd-libgd/commits/81e9a993f2893d651d225646378e3fd1b7465467
Added EXPECTED(). Most functions have arguments.

show more ...


Revision tags: php-5.5.20
# 4d21ad31 17-Dec-2014 Dmitry Stogov

Added EXPECTED(). Most functions have arguments.

Revision tags: php-5.4.36, php-5.6.4
# 2eef2abe 16-Dec-2014 Anatol Belski

Merge remote-tracking branch 'origin/master' into native-tls

* origin/master:
Optimize argument passing handlers:
Fix pcre non-FAST_ZPP build

Conflicts:
Zend

Merge remote-tracking branch 'origin/master' into native-tls

* origin/master:
Optimize argument passing handlers:
Fix pcre non-FAST_ZPP build

Conflicts:
Zend/zend_compile.c
Zend/zend_execute.h
Zend/zend_vm_def.h
Zend/zend_vm_execute.h
ext/pcre/php_pcre.c

show more ...


# 3a185977 16-Dec-2014 Dmitry Stogov

Optimize argument passing handlers:

- predcalculate offsets of passed argument and store it in opline->result.var for ZEND_SEND_*;
- don't update "number of passed arguments" op each ZEN

Optimize argument passing handlers:

- predcalculate offsets of passed argument and store it in opline->result.var for ZEND_SEND_*;
- don't update "number of passed arguments" op each ZEND_SEND_* opcode, store it on call frame creation
- Change ZEND_HANDLE_EXCEPTION to determine "number of passed arguments" in incomplete calls fefore freeing

show more ...

# bdeb220f 13-Dec-2014 Anatol Belski

first shot remove TSRMLS_* things

# f4311686 12-Dec-2014 Anatol Belski

Merge branch 'PHP-5.6'

* PHP-5.6:
updated NEWS
Fixed bug #68583 Crash in timeout thread

Conflicts:
Zend/zend_execute.h
Zend/zend_execute_API.c


# c96ffaa6 12-Dec-2014 Anatol Belski

Merge branch 'PHP-5.5' into PHP-5.6

* PHP-5.5:
Fixed bug #68583 Crash in timeout thread

Conflicts:
Zend/zend_execute.h


# 3affc0e8 12-Dec-2014 Anatol Belski

Fixed bug #68583 Crash in timeout thread

This replaces the GUI element used for execution timeout handling
on Windows. Instead a timer queue technique is used, which is indeed
a thre

Fixed bug #68583 Crash in timeout thread

This replaces the GUI element used for execution timeout handling
on Windows. Instead a timer queue technique is used, which is indeed
a thread pool. A timer queue timer is a lightweight object handled
but that thread pool and the timer thread spends most of the time
sleeping and waiting for an alert.

Please note also that this introduces neither binary nor source
breach. The custom timeout thread functions are deleted, however
they was not exported throug DLL, so couldn't be used by any
external code. As well they couldn't be used anywhere in the core
except in executor api, because those custom timeout thread
functions they used to operate on static variables which would
be overwritten (and that would blow).

So instead a relatively modern technique is used for the timeout
handling. It's still not perfect because the executor still has to
check EX(timed_out). This can be a topic for an improvement in
master. But brobably can be tricky as currently it seems to be not
possible to signal an individual thread. Also note another issue
that static variables aren't thread safe, but the current timer
implementation is.

show more ...

# 14e29f51 12-Dec-2014 Dmitry Stogov

Reduced size of zend_op on 64-bit systems.

the main idea - the smaller the zend_op structure, the lees memory traffic is required to load VM instructions during execution. The patch reduces

Reduced size of zend_op on 64-bit systems.

the main idea - the smaller the zend_op structure, the lees memory traffic is required to load VM instructions during execution. The patch reduces the size of each opcode from 48 to 32 bytes (saves 16 bytes for each opcode, and applications use thousands of opoceds). This reduced the number of CPU cache misses by 12% and improved performance of real-life apps by 1-2%.

The patch affects how constants and jump targets are represented in VM during execution. Previously they were implemented as absolute 64-bit pointers. Now they are relative 32-bit offsets.

In run-time constant now should be accessed as:
RT_CONSTANT(op_array, opine->op1) instead of opline->op1.zv
EX_CONSTANT(opline->op1) instead of opline->op1.zv

Jump targets:
OP_JMP_ADDR(opline, opline->op2) instead of opline->op2.jmp_addr

The patch doesn't change zend_op representation for 32-bit systems. They still use absolute addresses. The compile-time representation is also kept the same.

show more ...

# 9ea35a37 12-Dec-2014 Dmitry Stogov

Make ZEND_INIT_FCALL keep predcalculted size of necessary stack space in opline->op1.num to avoid its recalculation on each execution.

12345678910>>...17