History log of /php-src/Zend/zend_vm_def.h (Results 276 – 300 of 2285)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# cd56395d 19-Apr-2020 Tyson Andre

Speed up ZEND_SWITCH_STRING/ZEND_SWITCH_LONG for wrong type

This has the minor benefit of avoiding loading the address of the
jump table when the expression for the switch isn't a string

Speed up ZEND_SWITCH_STRING/ZEND_SWITCH_LONG for wrong type

This has the minor benefit of avoiding loading the address of the
jump table when the expression for the switch isn't a string/long.
gcc doesn't seem to optimize that.

The previous function body is the original implementation: ad8652818a5

```
// Before: 0.267s, after: 0.265s
function test_switch($x) {
for ($i = 0; $i < 10000000; $i++) {
switch ($x) {
case 'a':
case 'b':
echo "i=$i\n";
}
}
}
test_switch(null);
```

Closes GH-5419

show more ...

# 7352213b 17-Apr-2020 Nikita Popov

Early return if variadic type check fails

Don't check all the remaining arguments after one check failed.
I don't think this makes an observable behavior difference,
because we alrea

Early return if variadic type check fails

Don't check all the remaining arguments after one check failed.
I don't think this makes an observable behavior difference,
because we already suppress duplicate exceptions in argument
type error reporting.

show more ...

# 1a5a6d72 17-Apr-2020 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
zend_timeout() may access EX(opline)


# b2376be8 17-Apr-2020 Dmitry Stogov

Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
zend_timeout() may access EX(opline)


# d31ccb5f 17-Apr-2020 Dmitry Stogov

zend_timeout() may access EX(opline)

# 36935e42 30-Mar-2020 Máté Kocsis

Improve undefined variable error messages

Closes GH-5312

# 517c30b0 20-Mar-2020 Dmitry Stogov

JIT for FETCH_THIS

# 12cdab2d 18-Mar-2020 Dmitry Stogov

Improved JIT for BIND_GLOBAL

# df79277d 18-Mar-2020 Nikita Popov

Revert "Fetch for read in nested property assignments"

This reverts commit bb43a3822e42dbd15b1d416a166549d3980b379a.

After thinking about this a bit more, this is now going to be

Revert "Fetch for read in nested property assignments"

This reverts commit bb43a3822e42dbd15b1d416a166549d3980b379a.

After thinking about this a bit more, this is now going to be
a complete solution for the "readonly properties" case, for example:

unset($foo->readOnly->bar);

should also be legal and

$foo->readOnly['bar'] = 42;

should also be legal if $foo->readOnly is not an array but an
ArrayAccess object.

I think it may be better to distinguish better on the BP_VAR flag
level. Reverting for now.

show more ...

# bb43a382 10-Mar-2020 Nikita Popov

Fetch for read in nested property assignments

$a->b->c = 'd';

is now compiled the same way as

$b = $a->b;
$b->c = 'd';

That is, we perform a read f

Fetch for read in nested property assignments

$a->b->c = 'd';

is now compiled the same way as

$b = $a->b;
$b->c = 'd';

That is, we perform a read fetch on $a->b, rather than a write
fetch.

This is possible, because PHP 8 removed auto-vivification support
for objects, so $a->b->c = 'd' may no longer modify $a->b proper
(i.e. not counting interior mutability of the object).

Closes GH-5250.

show more ...

# 78b64bd4 13-Mar-2020 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
Check asserts early
identation fix
Call global code of preloaded script in global context
Avoid "Anonymous class wasn't preloaded" e

Merge branch 'PHP-7.4'

* PHP-7.4:
Check asserts early
identation fix
Call global code of preloaded script in global context
Avoid "Anonymous class wasn't preloaded" error by lazely loading of not preloaded part of a preloaded script

show more ...


# c5159b38 12-Mar-2020 Dmitry Stogov

Check asserts early

# 2dddab01 12-Mar-2020 Dmitry Stogov

Avoid "Anonymous class wasn't preloaded" error by lazely loading of not preloaded part of a preloaded script

# b2f7be72 09-Mar-2020 Nikita Popov

Merge branch 'PHP-7.4'

* PHP-7.4:
Fixed bug #79357


# 760faa12 09-Mar-2020 Nikita Popov

Fixed bug #79357

Peculiarly, for once the cause was not SOAPs "interesting" error
handling, but a bug in the call trampoline for internal functions...

# f44dd16b 05-Mar-2020 Máté Kocsis

Improve error message of foreach

Closes GH-5240

Revision tags: php-7.4.4RC1, php-7.3.16RC1
# 960318ed 25-Feb-2020 Máté Kocsis

Change argument error message format

Closes GH-5211

Revision tags: php-7.4.3, php-7.2.28, php-7.3.15RC1, php-7.4.3RC1
# ac0853eb 29-Jan-2020 Máté Kocsis

Make type error messages more consistent

Closes GH-5092

Revision tags: php-7.3.15, php-7.2.27, php-7.4.2, php-7.3.14
# d9335916 08-Jan-2020 Nikita Popov

Add support for $obj::class

This allows $obj::class, which gives the same result as get_class($obj).
Anything other than an object results in TypeError.

RFC: https://wiki.php.ne

Add support for $obj::class

This allows $obj::class, which gives the same result as get_class($obj).
Anything other than an object results in TypeError.

RFC: https://wiki.php.net/rfc/class_name_literal_on_object

Closes GH-5065.

show more ...

# fc0c71ad 10-Feb-2020 Nikita Popov

Deref slow-path ASSIGN_OBJ result

We should not store a reference inside IS_TMP_VAR.

# b5344542 06-Feb-2020 Dmitry Stogov

Merge branch 'PHP-7.4'

* PHP-7.4:
Make opcodes to return de-refereced values of typed references (in the same was as for non-typed)


# 5d0ef4c2 06-Feb-2020 Dmitry Stogov

Make opcodes to return de-refereced values of typed references (in the same was as for non-typed)

# 58b17906 03-Feb-2020 Nikita Popov

Apply tidy formatting

Mostly reindent PHP scripts to spaces.

# ec0ce49f 31-Jan-2020 Nikita Popov

Merge branch 'PHP-7.4'

* PHP-7.4:
Fix bug #76047


# d422478f 31-Jan-2020 Nikita Popov

Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
Fix bug #76047


1...<<11121314151617181920>>...92