summaryrefslogtreecommitdiff
path: root/TSRM
Commit message (Collapse)AuthorAgeFilesLines
* don't pass zero to malloc()Anatol Belski2015-03-101-1/+4
|
* improve debugability in TS debug buildsAnatol Belski2015-02-171-0/+4
| | | | | | | | gdb seems to be not always able to fetch the correct context for thread locals. Thus, the "if (TSRMLS_CACHE)" clause causes gdb to show crashes which aren't recognized neither with helgrind nor in release builds. This is reproducable by setting breakpoints on the exact line where PHP has a tsrm_get_ls_cache() call.
* made ZEND_TSRMLS_CACHE_* macros look like function callsAnatol Belski2015-02-163-8/+8
| | | | which also comply with the current semantics for such macros
* bump yearXinchen Hui2015-01-154-4/+4
|
* trailing whitespace removalStanislav Malyshev2015-01-104-12/+12
|
* missed include for intptr_t/uintptr_tAnatol Belski2014-12-221-0/+2
|
* use cleaner tsrm_intptr_t/tsrm_uintptr_t typedefAnatol Belski2014-12-221-7/+2
|
* fix zts build on mac/clangFerenc Kovacs2014-12-212-2/+2
|
* make the TSRM macros depend no the macroed cache nameAnatol Belski2014-12-161-4/+4
|
* removed the extra tsrm pointer passed to ctor/dtorAnatol Belski2014-12-162-9/+9
|
* first shot remove TSRMLS_* thingsAnatol Belski2014-12-132-21/+18
|
* explicit passing of *tsrm_ls isn't needed anymoreAnatol Belski2014-12-122-4/+4
|
* TSRMLS_D should be void, thanks DmitryAnatol Belski2014-12-111-1/+1
|
* default tsrmls cache to NULLAnatol Belski2014-11-191-1/+1
|
* Merge remote-tracking branch 'origin/master' into native-tlsAnatol Belski2014-11-182-14/+64
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * origin/master: (398 commits) NEWS add test for bug #68381 Fixed bug #68381 Set FPM log level earlier during init proper dllexport move to size_t where zend_string is used internally fix some datatype mismatches return after the warning, to fix uninitialized salt usage fix datatype mismatches add missing type specifier fix datatype mismatches fix unsigned check "extern" shouldn't be used for definitions joined identical conditional blocks simplify fpm tests SEND_VAR_NO_REF optimization Add test for bug #68442 Add various tests for FPM - covering recent bugs (68420, 68421, 68423, 68428) - for UDS - for ping and status URI - for multi pool and multi mode Include small MIT FastCGI client library from https://github.com/adoy/PHP-FastCGI-Client Get rid of zend_free_op structure (use zval* instead). Get rid of useless TSRMLS arguments. Add new FPM test for IPv4/IPv6 ... Conflicts: win32/build/config.w32
| * avoid repeated strlen usage, remove unused varsAnatol Belski2014-11-131-11/+10
| |
| * move these functions to the appropriate placeAnatol Belski2014-11-102-0/+51
| | | | | | | | and include the necessary header
| * fix datatype mismatch warnsAnatol Belski2014-10-291-3/+3
| |
* | moved most of the core to use static tsrm ls cache pointerAnatol Belski2014-10-155-2/+13
| | | | | | | | plus apache2handler, cli and cgi
* | TSRMLS_FETCH() is a spent forceAnatol Belski2014-10-151-1/+1
| |
* | Merge remote-tracking branch 'origin/master' into native-tlsAnatol Belski2014-10-052-2/+4
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | * origin/master: properly export tsrm_strtok_r() Fixed list() behavior inconsistency (string handling is disabled for all cases, ArrayAccess objects handling is enabled for all cases, ZEND_FETCH_DIM_TMP_VAR opcode is renamed into ZEND_FETCH_LIST, ZEND_FETCH_ADD_LOCK flag is removed). Fix accidental edit in previous commit Fix arginfo DateTimeZone::getOffset() now accepts a DateTimeInterface DateTimeZone::getOffset() now accepts a DateTimeInterface Moved checks and error reporting related to static methods from DO_FCALL inti INTI_FCALL* opcodes that may really deal with static methods. (In some rare cases it may lead to different order of warning messages). Fixed a bug that causes crash when environment variable is access while parsing php.ini Fixed a bug that causes crash when environment variable is access while parsing php.ini
| * properly export tsrm_strtok_r()Anatol Belski2014-10-052-2/+4
| | | | | | | | | | for this particular case fixing phar shared build, but for the general usage anyway
* | Merge remote-tracking branch 'origin/master' into native-tlsAnatol Belski2014-10-031-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * origin/master: remove the remains of dsp files handling fix EX usage remove misprint parentheses remove misprint parentheses Replaced EG(This) and EX(object) with EX(This). Internal functions now recieves zend_execute_data as the first argument. And this one... It should be in extern c Remove useless condition NEWS entry for previous commit NEWS entry for previous commit add IPv6 support to php-fpm Micro optimization for the most frequency case Add hash to EXTENSIONS file Remove extensions which are long gone we also have xz release tarballs since 5.5 Fix ZTS build improved file size computation in stat() Fixed incorrect compilation 5.5.19 now
| * remove misprint parenthesesAnatol Belski2014-10-031-2/+2
| |
* | linux compat for the static tsrm ls cache pointerAnatol Belski2014-10-021-1/+1
| |
* | using pointer to the tsrm ls cache instead of a function callAnatol Belski2014-10-011-1/+14
| | | | | | | | yet another approach
* | prepare some macros to use tsrm cache as pointerAnatol Belski2014-09-301-0/+7
| | | | | | | | instead of a function call
* | Merge remote-tracking branch 'origin/master' into native-tlsAnatol Belski2014-10-011-178/+0
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * origin/master: (26 commits) Micro optimization Drop unused INIT_STRING opcode Drop unused RAISE_ABSTRACT_ERROR opcode CT substitute unqualified true/false/null in namespaces Fix a couple compile warnings fix test filename one more test to illustrate transfer of an arbitrary data amount throug pipes fix tests on linux better test cleanup Use more readable inline functions increase the polling period to not to break existing behaviours updated NEWS Fixed bug #51800 proc_open on Windows hangs forever Fixed segfault Set an LDAP error code when failing ldap_bind due to null bytes Fix segmentation fault in debug_backtrace() Drop support for GMP 4.1 Make gmp_setbit and gmp_clrbit return values consistent removed *.dsw and *.dsp files Opcache compatibility for coalesce operator ...
| * removed *.dsw and *.dsp filesAnatol Belski2014-09-281-178/+0
| |
* | revert the local speedup approachAnatol Belski2014-10-011-7/+4
| |
* | approach local pointers in performance sensitive areaskrakjoe2014-09-271-4/+7
| |
* | reworked the patch, less new stuff but workyAnatol Belski2014-09-256-251/+77
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | TLS is already used in TSRM, the way exporting the tsrm cache through a thread local variable is not portable. Additionally, the current patch suffers from bugs which are hard to find, but prevent it to be worky with apache. What is done here is mainly uses the idea from the RFC patch, but - __thread variable is removed - offset math and declarations are removed - extra macros and definitions are removed What is done merely is - use an inline function to access the tsrm cache. The function uses the portable tsrm_tls_get macro which is cheap - all the TSRM_* macros are set to placebo. Thus this opens the way remove them later Except that, the logic is old. TSRMLS_FETCH will have to be done once per thread, then tsrm_get_ls_cache() can be used. Things seeming to be worky are cli, cli server and apache. I also tried to enable bz2 shared and it has worked out of the box. The change is yet minimal diffing to the current master bus is a worky start, IMHO. Though will have to recheck the other previously done SAPIs - embed and cgi. The offsets can be added to the tsrm_resource_type struct, then it'll not be needed to declare them in the userspace. Even the "done" member type can be changed to int16 or smaller, then adding the offset as int16 will not change the struct size. As well on the todo might be removing the hashed storage, thread_id != thread_id and linked list logic in favour of the explicit TLS operations.
* | call ctor if it's not done yetAnatol Belski2014-09-241-1/+1
| |
* | fix indentAnatol Belski2014-09-231-20/+20
| |
* | define explicit export/impot specAnatol Belski2014-09-231-1/+4
| |
* | basic windows fixAnatol Belski2014-09-224-15/+34
| |
* | vars with __declspec(thread) cannot use __declspec(dllexport)Anatol Belski2014-09-202-0/+8
| |
* | native tls initial patchkrakjoe2014-09-205-73/+224
|/
* s/PHP 5/PHP 7/Johannes Schlüter2014-09-194-4/+4
|
* reverted some previous IS_ABSOLUTE_PATH related changesAnatol Belski2014-09-191-2/+1
| | | | It's fine with strlen usage now, only one call
* correct type for the thread idAnatol Belski2014-09-181-1/+1
|
* avoid repeated strlen usageAnatol Belski2014-09-141-1/+2
|
* avoid usage of 'type' before the null pointer checkAnatol Belski2014-08-291-1/+1
|
* first shot on merging the core fro the int64 branchAnatol Belski2014-08-161-1/+1
|
* Merge branch 'PHP-5.5' into PHP-5.6Anatol Belski2014-02-241-1/+1
|\ | | | | | | | | * PHP-5.5: fixed macro
| * Merge branch 'PHP-5.4' into PHP-5.5Anatol Belski2014-02-241-1/+1
| |\ | | | | | | | | | | | | * PHP-5.4: fixed macro
| | * fixed macroAnatol Belski2014-02-241-1/+1
| | |
| | * Bump yearXinchen Hui2014-01-036-6/+6
| | |
| * | Fixed bug #66009 Failed compilation of PHP extension with C++ std library ↵Anatol Belski2014-01-041-8/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | using VS 2012 Visual Studio 2012 includes sanity checks for C++11 features, see http://msdn.microsoft.com/en-us/library/vstudio/bb531344(v=vs.110).aspx To fix the 'inline' keyword redefinition for C++ in debug mode, the new macros ZEND_WIN32_KEEP_INLINE is introduced, ZEND_WIN32_FORCE_INLINE is automatically appended in release mode.
| * | Bump yearXinchen Hui2014-01-036-6/+6
| |/