History log of /PHP-8.4/Zend/zend_opcode.c (Results 201 – 225 of 431)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 0579e827 15-Jan-2015 Xinchen Hui

bump year


# 73c1be26 15-Jan-2015 Xinchen Hui

Bump year


# dbe66fb2 13-Jan-2015 Dmitry Stogov

Improved access to static property. Now we cache pointers to zval instead of pointers to property_info.


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

trailing whitespace removal


# 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, php-5.5.20, php-5.4.36, php-5.6.4
# bdeb220f 13-Dec-2014 Anatol Belski

first shot remove TSRMLS_* things


# 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 ...


# 5dd427ea 03-Dec-2014 Dmitry Stogov

Use zend_string* for op_array->arg_info[]->name and op_array->arg_info[]->class_name. For internal functions we still use char*.


# 569d8646 02-Dec-2014 Dmitry Stogov

Revert "Unecessary assignment"

This reverts commit b19333663a872a8b0b8c799781236b5cd5bfa47a.


# b1933366 02-Dec-2014 Xinchen Hui

Unecessary assignment


# dcfe5877 28-Nov-2014 Dmitry Stogov

Rename EX_VAR_2() into ZEND_CALL_VAR() and EX_VAR_NUM_2() into ZEND_CALL_VAR_NUM().


# 216ef321 27-Nov-2014 Dmitry Stogov

Changed "finally" handling. Removed EX(fast_ret) and EX(delayed_exception). Allocate and use additional IS_TMP_VAR slot on VM stack instead.


Revision tags: php-5.6.4RC1, php-5.5.20RC1, php-5.6.3, php-5.5.19, php-5.4.35, php-5.6.3RC1, php-5.5.19RC1, php-5.5.18
# c00424e4 15-Oct-2014 Anatol Belski

bring back all the TSRMLS_FETCH() stuff

for better comparability with the mainstream


Revision tags: php-5.4.34, php-5.5.18RC1, php-5.6.1
# 06d0230a 26-Sep-2014 Anatol Belski

cleanup TSRMLS_FETCH


Revision tags: php-5.6.2
# 7cef08c5 23-Sep-2014 Dmitry Stogov

Allocate copies of internal functions inherited in user classes at CG(arena), instead of permanent heap (malloc).


Revision tags: php-5.4.33
# 69e7c9d8 16-Sep-2014 Nikita Popov

Initial coalesce operator implementation


Revision tags: php-5.5.17
# 383a0773 15-Sep-2014 Anatol Belski

fix signed/unsigned mismatch


Revision tags: php-5.6.1RC1
# 82096dc1 11-Sep-2014 Dmitry Stogov

Removed ZEND_QM_ASSIGN_VAR and ZEND_JMP_SET_VAR opcodes (in PHPNG they did exacly the same as ZEND_QM_ASSIGN and ZEND_JMP_SET)


# 9e753531 03-Sep-2014 Nikita Popov

Use zval_ptr_dtor_nogc to destroy literals

Also move the definition of zval_ptr_dtor_nogc to zend_variables.h
(from zend_execute.h/.c) as it's used in a few places.


Revision tags: php-5.5.17RC1, php-5.4.33RC1
# ee552b62 27-Aug-2014 Dmitry Stogov

Reorder fields for better nenory consumtion and data locality on 64-bit systems


# b1f53ca4 27-Aug-2014 Dmitry Stogov

Use efree_size() instead of efree() where posible


Revision tags: php-5.6.0
# 59848e3f 25-Aug-2014 Nikita Popov

Remove ZEND_ACC_INTERACTIVE and CG(interactive)

As far as I can discern these are leftovers of the interactive
shell implementation that was used before PHP 5.4. Now the readline
ext

Remove ZEND_ACC_INTERACTIVE and CG(interactive)

As far as I can discern these are leftovers of the interactive
shell implementation that was used before PHP 5.4. Now the readline
ext makes use of normal eval calls for this.

So, dropping these until there is evidence to the contrary, as they
currently wouldn't work anyway.

show more ...


Revision tags: POST_AST_MERGE, PRE_AST_MERGE
# 6f9f0bf2 25-Aug-2014 Anatol Belski

master renames phase 2


# c3e3c98e 25-Aug-2014 Anatol Belski

master renames phase 1


Revision tags: POST_64BIT_BRANCH_MERGE, PRE_64BIT_BRANCH_MERGE, php-5.5.16, php-5.4.32
# 8ee2a4a9 16-Aug-2014 Anatol Belski

first shot on merging the core fro the int64 branch


12345678910>>...18