History log of /PHP-7.1/Zend/zend_compile.c (Results 376 – 400 of 1956)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 69a4b135 04-Jan-2015 Nikita Popov

Fix use after free for variables with integer names


# 3bd96e07 29-Dec-2014 Xinchen Hui

Use internd string as key


# c42ac095 24-Dec-2014 Dmitry Stogov

Added new API function 'zend_string* zend_string_tolower(zend_string*)'.
It simplifies code and avoids unnecessary allocation and copying if string is already in lower case.


# 2646f7bc 22-Dec-2014 Dmitry Stogov

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


# 0f815642 06-Dec-2014 Nikita Popov

Drop ZEND_PRINT opcode in favor of ZEND_ECHO

The return value long(1) is an IS_CONST operand now.


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


# 0a40e6a3 14-Dec-2014 Anatol Belski

removed the TS part, as suggested by Dmitry.

Tests seem to be ok so far


# e112f6a0 14-Dec-2014 Anatol Belski

second shot on removing TSRMLS_*


# bdeb220f 13-Dec-2014 Anatol Belski

first shot remove TSRMLS_* things


# 3893c1fc 12-Dec-2014 Dmitry Stogov

Fixed compilation warnings


# ee226b96 08-Dec-2014 Kévin Dunglas

Fixed Bug #65576 (Constructor from trait conflicts with inherited constructor)


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


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


# 5f80df0d 02-Dec-2014 Xinchen Hui

Missed closed folder mark


# 7c77ca38 29-Oct-2014 Julien Pauli

Fix #65419 - Inside trait, self::class != __CLASS__


# dcfe5877 28-Nov-2014 Dmitry Stogov

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


# 109baa03 27-Nov-2014 Dmitry Stogov

Fixed compilation warnings


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


# 303d73ec 26-Nov-2014 Dmitry Stogov

Reimplemented silence operator (@) handling on exceptions. Now each silence region is stored in op_array->brk_cont_array. On exception ZEND_HANDLE_EXCEPTION handler traverse this array and restore or

Reimplemented silence operator (@) handling on exceptions. Now each silence region is stored in op_array->brk_cont_array. On exception ZEND_HANDLE_EXCEPTION handler traverse this array and restore original EG(error_reporting) if exception occured inside a "silence" region.

show more ...


# e116595e 25-Nov-2014 Dmitry Stogov

Better fix for bug #68446


# 83ce1d9a 25-Nov-2014 Dmitry Stogov

Revert "Merge remote-tracking branch 'origin/PHP-5.6'"

This reverts commit 38229d13d14bb0bda736d52a9a4f25c121445692, reversing
changes made to 77f172725a37c8ddee750bf6970529a1570fbc86.


# aba95c23 25-Nov-2014 Bob Weinand

Revert "Fix bug #68446 (bug with constant defaults and type hints)"

This reverts commit 5ef138b0c7c4e9532e205f45c18a72aa1d279c24.


# 5ef138b0 23-Nov-2014 Bob Weinand

Fix bug #68446 (bug with constant defaults and type hints)


# cd3b46f2 29-Oct-2014 Julien Pauli

Fix #68185 - Inconsistent insteadof definition


1...<<11121314151617181920>>...79