summaryrefslogtreecommitdiff
path: root/Zend/zend_string.c
Commit message (Collapse)AuthorAgeFilesLines
* Merge branch 'PHP-7.3' into PHP-7.4Dmitry Stogov2019-04-181-1/+15
|\ | | | | | | | | * PHP-7.3: Check assert only when RC_DEBUG is enabled
| * Check assert only when RC_DEBUG is enabledDmitry Stogov2019-04-181-1/+15
| |
* | Remove local variablesPeter Kokot2019-02-031-10/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch removes the so called local variables defined per file basis for certain editors to properly show tab width, and similar settings. These are mainly used by Vim and Emacs editors yet with recent changes the once working definitions don't work anymore in Vim without custom plugins or additional configuration. Neither are these settings synced across the PHP code base. A simpler and better approach is EditorConfig and fixing code using some code style fixing tools in the future instead. This patch also removes the so called modelines for Vim. Modelines allow Vim editor specifically to set some editor configuration such as syntax highlighting, indentation style and tab width to be set in the first line or the last 5 lines per file basis. Since the php test files have syntax highlighting already set in most editors properly and EditorConfig takes care of the indentation settings, this patch removes these as well for the Vim 6.0 and newer versions. With the removal of local variables for certain editors such as Emacs and Vim, the footer is also probably not needed anymore when creating extensions using ext_skel.php script. Additionally, Vim modelines for setting php syntax and some editor settings has been removed from some *.phpt files. All these are mostly not relevant for phpt files neither work properly in the middle of the file.
* | Adios, yearly copyright rangesZeev Suraski2019-01-301-1/+1
| |
* | Delay hash table allocationDmitry Stogov2019-01-241-2/+4
| |
* | Fix some sign-related issues in comparisonsjvoisin2019-01-091-1/+1
| |
* | Merge branch 'PHP-7.3'Nikita Popov2018-11-131-1/+1
|\ \ | |/
| * Fix compilation on x32Jan Rękorajski2018-11-131-1/+1
| | | | | | | | Signed-off-by: Elan Ruusamäe <glen@pld-linux.org>
| * Future-proof email addressesZeev Suraski2018-11-011-1/+1
| |
* | Update email addresses. We're still @Zend, but future proofing it...Zeev Suraski2018-11-011-1/+1
| |
* | Improved shared interned strings handling. The previous implementation ↵Dmitry Stogov2018-10-251-16/+0
|/ | | | worked incorrectly in ZTS build. It changed strings only in function/class tables of one thread. Now all threads gets the same shared interned strings. Also, on shutdown, we don't try to replace SHM interned strings back to process strings, but delay dettachment of SHM instead.
* Remove old SVN keywords substitutionsPeter Kokot2018-06-161-2/+0
| | | | | | | | When the PHP source code was versioned in Subversion, there was possible to substitute certain keywords such as $Id$ with revision number, last change time and author name. Such approach is not used in Git so this patch removes these outdated artifacts from source code files.
* micro optimizationDmitry Stogov2018-05-081-0/+5
|
* Use "fastcall" calling conventionDmitry Stogov2018-04-041-12/+12
|
* Optimize zend_hash_real_init()Dmitry Stogov2018-03-231-1/+1
|
* Use macros to update specific parts of GC_TYPE_INFO() (direct assignments to ↵Dmitry Stogov2018-02-281-1/+1
| | | | GC_TYPE(), GC_FLAGS() and GC_INFO() are prohibited)
* Fixed string comparison (it may fail in case of not null-terminated strings)Dmitry Stogov2018-01-311-2/+2
|
* Merge branch 'PHP-7.2'Dmitry Stogov2018-01-261-0/+8
|\ | | | | | | | | * PHP-7.2: Restore initial values on graceful server restart.
| * Restore initial values on graceful server restart.Dmitry Stogov2018-01-261-0/+6
| |
| * year++Xinchen Hui2018-01-021-1/+1
| |
* | year++Xinchen Hui2018-01-021-1/+1
| |
* | Fixed possible local assembler labels conflicts.Dmitry Stogov2017-12-201-26/+26
| |
* | Fix movzb operand sizeNikita Popov2017-12-061-2/+2
| |
* | Use local labelsDmitry Stogov2017-12-061-26/+26
| |
* | Fixed gcc assembler constaints.Dmitry Stogov2017-12-061-29/+99
| | | | | | | | Added less efecient replacement functions for valgrind, to prevent warnings about uninitialized tail.
* | Use unsigned comparison instructionsDmitry Stogov2017-12-051-4/+4
| |
* | Implemented x86 and x86_64 assembler functions for zend_string equality check.Dmitry Stogov2017-12-041-0/+72
| | | | | | | | They take into account zend_string layout (value alignment and trailing padding) and perform comparison by double or quad words.
* | Use zend_string_equal*() API for zend_string equality check instead of ↵Dmitry Stogov2017-12-041-1/+16
| | | | | | | | direct memcmp() usage.
* | Don't intern strings in-place if their refcoung greater than 1Dmitry Stogov2017-11-031-0/+16
| |
* | Switch back from "request" interned strings storage to "permanent" in MSHUTDOWNDmitry Stogov2017-11-021-7/+17
| |
* | Encapsulate reference-counting primitives.Dmitry Stogov2017-10-271-1/+1
| | | | | | | | | | | | Prohibit direct update of GC_REFCOUNT(), GC_SET_REFCOUNT(), GC_ADDREF() and GC_DELREF() shoukf be instead. Added mactros to validate reference-counting (disabled for now). These macros are going to be used to eliminate race-condintions during reference-counting on data shared between threads.
* | Fix datatypeAnatol Belski2017-10-191-2/+2
| |
* | Extend zend_string API to avoid reallocation in zend_string_init_interned()Dmitry Stogov2017-10-191-7/+58
|/
* further sync for vim mode linesAnatol Belski2017-07-041-0/+2
|
* move to hash API for interned strings ht managementAnatol Belski2017-03-071-42/+4
|
* Interned strings unification for TS/NTSAnatol Belski2017-03-041-145/+157
| | | | | | | | | | | | | Hereby, interned strings are supported in thread safe PHP. The patch implements two types of interned strings - interning per process, strings are not freed till process end - interning per request, strings are freed at request end There is no runtime interning. With Opcache, all the permanent iterned strings are copied into SHM on startup, additional copying into SHM might happen on demand.
* Update copyright headers to 2017Sammy Kaye Powers2017-01-021-1/+1
|
* further normalizations, uint vs uint32_tAnatol Belski2016-11-261-5/+5
| | | | | | fix merge mistake yet one more replacement run
* Merge branch 'PHP-7.0' into PHP-7.1Anatol Belski2016-10-131-12/+0
|\ | | | | | | | | | | * PHP-7.0: use already exported symbol Revert "export symbol missing by phpdbg"
| * Revert "export symbol missing by phpdbg"Anatol Belski2016-10-131-12/+0
| | | | | | | | | | | | This reverts commit 611ab7fe5b9fe41de56c25b1d348a866794b1fb1. Overseen strpprintf is there
* | Merge branch 'PHP-7.0' into PHP-7.1Anatol Belski2016-10-121-0/+12
|\ \ | |/ | | | | | | * PHP-7.0: export symbol missing by phpdbg
| * export symbol missing by phpdbgAnatol Belski2016-10-121-0/+12
| |
* | HANDLE_BLOCK/UNBLOCK_INTERRUPTIONS() protection on inter-process data is ↵Dmitry Stogov2016-06-201-6/+0
| | | | | | | | | | | | | | completely useless now. Historicaly, these macros were introduced as a protection from execution timeout handling, but we don't need them anymore after "safe execution timeout" implementation. These macros are still useful to protect from termination during inner process data modification, because of OS signals (e.g. SIGTERM during OPcache SHM update).
* | cast const awayXinchen Hui2016-06-111-1/+1
| |
* | fix dangling pointer, phpdbg reveals itAnatol Belski2016-06-021-0/+2
| |
* | fix known interned strings init with TS per requestAnatol Belski2016-06-021-7/+16
| |
* | Intern some known (and offten used) strings.Dmitry Stogov2016-05-121-0/+40
|/
* bump year which is missed in rev 49493a2Xinchen Hui2016-01-021-1/+1
|
* Use ZSTR_ API to access zend_string elements (this is just renaming without ↵Dmitry Stogov2015-06-301-3/+3
| | | | semantick changes).
* Improved zend_string API (Francois Laupretre)Dmitry Stogov2015-06-291-1/+1
| | | | | | | | | | | | | | | | | | | | Squashed commit of the following: commit d96eab8d79b75ac83d49d49ae4665f948d15a804 Author: Francois Laupretre <francois@tekwire.net> Date: Fri Jun 26 01:23:31 2015 +0200 Use the new 'ZSTR' macros in the rest of the code. Does not change anything to the generated code (thanks to compat macros) but cleaner. commit b3526439104ac7a89a8e0c79dbebf33b22bd01b8 Author: Francois Laupretre <francois@tekwire.net> Date: Thu Jun 25 13:45:06 2015 +0200 Improve zend_string API Add missing methods