1
0
mirror of https://github.com/php/php-src.git synced 2026-04-18 13:31:27 +02:00
Commit Graph

1826 Commits

Author SHA1 Message Date
Xinchen Hui
5c05870ef6 Optimized fast_memcpy with AVX instructions
Great thanks to welting for helping :)
2018-02-15 00:18:47 +08:00
Anatol Belski
57a299d682 Merge branch 'PHP-7.2'
* PHP-7.2:
  Extend skipif check
2018-02-13 14:06:27 +01:00
Anatol Belski
2235da59af Extend skipif check 2018-02-13 14:04:51 +01:00
Nikita Popov
d05ac8f610 Merge branch 'PHP-7.2' 2018-02-09 15:11:42 +01:00
Nikita Popov
7aac61ce76 Fixed bug #75938
New modulus range inference implementation has been verified using
https://gist.github.com/nikic/67947ff92cf0e1f7e931f2f0d4cf817f.

The computed bounds are not tight, but it seems to be very hard to
compute tight bounds on modulus operations.
2018-02-09 15:10:23 +01:00
Dmitry Stogov
d968581c5b typo 2018-02-09 11:33:02 +03:00
Gabriel Caruso
2d48d734a2 Fix some misspellings 2018-02-06 16:59:00 +01:00
Nikita Popov
39c5857135 Merge branch 'PHP-7.2' 2018-02-05 21:43:50 +01:00
Nikita Popov
1391a0fa0b Fixed bug #75893
It is not sufficient to just add the additional types for aliased
variables at the end of type inference, because types of derived
variables may depend on them. Make sure the additional types are
always added whenever the type of an aliased variable is updated.
2018-02-05 21:41:44 +01:00
Nikita Popov
aa7dbc8ee7 Merge branch 'PHP-7.2' 2018-02-05 21:10:12 +01:00
Nikita Popov
d9e71169e6 Fixed bug #75729
Don't try to evaluate substr() and strpos() at compile-time if
mbstring function overloading is enabled. I'm reusing the
COMPILE_NO_BUILTIN_STRLEN for the detection of mbstring function
overloading here, even if it's technically only about strlen()...
2018-02-05 21:08:18 +01:00
Dmitry Stogov
ca035f26aa Moved "zval.u2.cache_slot" into free room of "zend_op" 2018-02-05 19:41:47 +03:00
Dmitry Stogov
3a794d39f0 Avoid repeatable ARG_SHOULD_BE_SENT_BY_REF() checks in FETCH_*FUNC_ARG and following SEND_VAR_EX. Perform the check once in a new CHECK_FUNC_ARG opcode and reuse in the following FETCH_*FUNC_ARG and SEND_FUNC_ARG (SEND_VAR_EX replacement). 2018-02-05 19:40:06 +03:00
Gabriel Caruso
ce1d69a1f6 Use int instead of integer in type errors
PHP requires integer typehints to be written "int" and does not
allow "integer" as an alias. This changes type error messages to
match the actual type name and avoids confusing messages like
"must be of the type integer, integer given".
2018-02-04 19:08:23 +01:00
Gabriel Caruso
b0d3c1bf83 Add and fix SKIPIF sections 2018-02-04 17:26:37 +01:00
Anatol Belski
674c1ea7dc Fix incompatible pointer warning 2018-02-01 16:52:18 +01:00
Dmitry Stogov
8c977c3430 typo 2018-02-01 17:46:30 +03:00
Dmitry Stogov
ba298725d1 Changed CATCH instruction format (extended_value moved into op2, op2 into result, result into extended_value) 2018-01-31 22:39:30 +03:00
Dmitry Stogov
9c7fb529ce Changed FETCH_CONSTANT instruction format (extended_value moved into op1) 2018-01-31 18:15:25 +03:00
Dmitry Stogov
f67f455ef7 Changed FETCH_CLASS instruction format (extended_value moved into op1) 2018-01-31 18:14:43 +03:00
Dmitry Stogov
7141631cc8 Change FETCH/ISSET instruction modifiers:
- Get rid of ZEND_ISEMPTY and ZEND_ISSET_ISEMPTY_MASK. Use just single ZEND_ISSET bit to make distinct between isset() and empty()
- Use ZEND_FETCH_GLOBAL, ZEND_FETCH_LOCAL and ZEND_FETCH_GLOBAL_LOCK as bitmask
- Removed unused ZEND_FETCH_STANDARD
- Extended ZEND_FETCH_ARG_MASK
2018-01-30 22:06:05 +03:00
Dmitry Stogov
9cbb521094 Access HashTable.u.flags through HT_FLAGS() macro. 2018-01-22 13:36:15 +03:00
Dmitry Stogov
742d5a01ed Get rid of IS_TYPE_COPYABLE. 2018-01-19 17:47:26 +03:00
Dmitry Stogov
bf7176c70f Use reference-counting instead of duplication and separation, if really necessary. 2018-01-19 01:03:24 +03:00
Dmitry Stogov
c5c9a69447 Use ZVAL_DUP() instead of zval_copy_ctor() 2018-01-17 14:59:15 +03:00
Dmitry Stogov
5c77bac9a7 A cheaper way to reset type flags. 2018-01-17 01:58:51 +03:00
Dmitry Stogov
2223f04304 Cleanup (at persistence stage we may get only "user" functions; regular op_arrays can't be referenced from different places) 2018-01-12 12:05:18 +03:00
Dmitry Stogov
c9034c3b33 Get rid of zend_op_array.early_binding 2018-01-11 19:15:52 +03:00
Dmitry Stogov
d89c8dd8b8 Remove HashTable holes in functions and class tables. 2018-01-10 10:15:55 +03:00
Nikita Popov
f208187773 Backport narrowing fix to 7.1
This is a cherry-pick of 8a4532319d.
2018-01-09 18:41:46 +01:00
Xinchen Hui
63a96ebf6a Fixed bug while dealing with ADD_ARRAY_ELEMENT against an existing const array 2018-01-07 14:17:47 +08:00
Xinchen Hui
8d63c834e4 Change assertion 2018-01-05 15:05:05 +08:00
Xinchen Hui
729a6688af Optimized FETCH_CLASS before INSTANCEOF out if possible 2018-01-05 12:58:28 +08:00
Xinchen Hui
c0913af570 Fixed test 2018-01-05 12:54:20 +08:00
Xinchen Hui
1db6c19365 Fixed wrongly const replacing on partial array 2018-01-05 12:29:39 +08:00
Kalle Sommer Nielsen
34fb94b9f3 Fix macro for Windows 2018-01-04 08:16:20 +01:00
Xinchen Hui
4a4602c45c Merge branch 'master' of git.php.net:/php-src
* 'master' of git.php.net:/php-src:
  Happy new year (Update copyright to 2018)
  Happy new year (Update copyright to 2018)
  Revert "Enable ODBC tests on AppVeyor"
  Enable ODBC tests on AppVeyor
  Skip on Travis-CI
  Extend skip section
  2018
  missing changelog entries + fix version and date
  missing changelog entries
  2018
  Trailing whitespaces
2018-01-04 13:45:11 +08:00
Gabriel Caruso
6400264856 Trailing whitespaces
Signed-off-by: Gabriel Caruso <carusogabriel34@gmail.com>
2018-01-03 14:38:00 +01:00
Xinchen Hui
76d0e3d514 Enable replacing const to INSTANCEOF 2018-01-03 18:28:03 +08:00
Xinchen Hui
a76eeea736 Merge branch 'PHP-7.2'
* PHP-7.2:
  Happy new year (Update copyright to 2018)

Conflicts:
	ext/phar/LICENSE
2018-01-03 16:02:15 +08:00
Xinchen Hui
0e62639d28 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Happy new year (Update copyright to 2018)
2018-01-03 16:00:34 +08:00
Lior Kaplan
fbfdd1e1c4 Happy new year (Update copyright to 2018) 2018-01-02 23:42:29 +02:00
Xinchen Hui
a6519d0514 year++ 2018-01-02 12:57:58 +08:00
Xinchen Hui
7a7ec01a49 year++ 2018-01-02 12:55:14 +08:00
Xinchen Hui
ccd4716ec7 year++ 2018-01-02 12:53:31 +08:00
Nikita Popov
ffc0a17322 Fix typos 2017-12-30 23:40:33 +01:00
Nikita Popov
b6581038eb Use GC_FLAGS_SHIFT in a few more places
Rather than hardcoding 8.
2017-12-30 23:40:25 +01:00
Dmitry Stogov
5c8f8f8fce Use ZEND_FAST_CONCAT instead of ZEND_CONCAT for CONST operands. 2017-12-29 13:54:18 +03:00
Dmitry Stogov
f010423335 Use IS_EQUAL instead of CASE when first operand is CV or CONST. Removed CASE handlers that duplicated IS_EQUAL. 2017-12-29 12:57:58 +03:00
Dmitry Stogov
bee5bc78ed Merge branch 'PHP-7.2'
* PHP-7.2:
  Fixed bug #75720 (File cache not populated after SHM runs full)
2017-12-28 14:10:01 +03:00