Commit graph

350 commits

Author SHA1 Message Date
Dmitry Stogov
0a77dcd4b9 Removed EG(in_execution). If EG(currentent_execute_data) is not NULL we are executing something. 2014-07-03 01:02:25 +04:00
Dmitry Stogov
63c057e331 Removed EG(opline_ptr) and use corresponding value from EG(current_execute_data) 2014-07-02 23:29:53 +04:00
Dmitry Stogov
accaaf9d6e Don't include trailing zero into hash function 2014-06-17 02:59:00 +04:00
Dmitry Stogov
15ba03fc80 Avoid repeatable zend_is_autogolobal() calls 2014-06-10 00:16:18 +04:00
Dmitry Stogov
b3b616cf7e Introduced immutable arrays. They don't need to be copyed and may be used directly from SHM. 2014-05-29 18:21:56 +04:00
Pierre Joye
a897591180 return ptr, not status 2014-05-15 20:14:29 +02:00
Dmitry Stogov
17d027ed47 Split IS_BOOL into IS_FALSE and IS_TRUE 2014-04-30 18:32:42 +04:00
Dmitry Stogov
f9927a6c97 Merge mainstream 'master' branch into refactoring
During merge I had to revert:
	Nikita's patch for php_splice() (it probably needs to be applyed again)
	Bob Weinand's patches related to constant expression handling (we need to review them carefully)
	I also reverted all our attempts to support sapi/phpdbg (we didn't test it anyway)

Conflicts:
	Zend/zend.h
	Zend/zend_API.c
	Zend/zend_ast.c
	Zend/zend_compile.c
	Zend/zend_compile.h
	Zend/zend_constants.c
	Zend/zend_exceptions.c
	Zend/zend_execute.c
	Zend/zend_execute.h
	Zend/zend_execute_API.c
	Zend/zend_hash.c
	Zend/zend_highlight.c
	Zend/zend_language_parser.y
	Zend/zend_language_scanner.c
	Zend/zend_language_scanner_defs.h
	Zend/zend_variables.c
	Zend/zend_vm_def.h
	Zend/zend_vm_execute.h
	ext/date/php_date.c
	ext/dom/documenttype.c
	ext/hash/hash.c
	ext/iconv/iconv.c
	ext/mbstring/tests/zend_multibyte-10.phpt
	ext/mbstring/tests/zend_multibyte-11.phpt
	ext/mbstring/tests/zend_multibyte-12.phpt
	ext/mysql/php_mysql.c
	ext/mysqli/mysqli.c
	ext/mysqlnd/mysqlnd_reverse_api.c
	ext/mysqlnd/php_mysqlnd.c
	ext/opcache/ZendAccelerator.c
	ext/opcache/zend_accelerator_util_funcs.c
	ext/opcache/zend_persist.c
	ext/opcache/zend_persist_calc.c
	ext/pcre/php_pcre.c
	ext/pdo/pdo_dbh.c
	ext/pdo/pdo_stmt.c
	ext/pdo_pgsql/pgsql_driver.c
	ext/pgsql/pgsql.c
	ext/reflection/php_reflection.c
	ext/session/session.c
	ext/spl/spl_array.c
	ext/spl/spl_observer.c
	ext/standard/array.c
	ext/standard/basic_functions.c
	ext/standard/html.c
	ext/standard/mail.c
	ext/standard/php_array.h
	ext/standard/proc_open.c
	ext/standard/streamsfuncs.c
	ext/standard/user_filters.c
	ext/standard/var_unserializer.c
	ext/standard/var_unserializer.re
	main/php_variables.c
	sapi/phpdbg/phpdbg.c
	sapi/phpdbg/phpdbg_bp.c
	sapi/phpdbg/phpdbg_frame.c
	sapi/phpdbg/phpdbg_help.c
	sapi/phpdbg/phpdbg_list.c
	sapi/phpdbg/phpdbg_print.c
	sapi/phpdbg/phpdbg_prompt.c
2014-04-26 00:32:51 +04:00
Nikita Popov
08ae88157b Allocate zend_strings with correct size
For me (32bit) sizeof(zend_string) is 20, which means that the
char[1] array at the end is padded with three bytes. Thus allocating
based on sizeof(zend_string)-1 overallocates by those 3 padding bytes.

This commit fixes the allocation size, by using XtOffsetOf.
2014-04-23 19:34:51 +02:00
Dmitry Stogov
72c287bd23 Combine HashTable.flags and HashTable.nApplyCount into single 32-bit word 2014-04-21 18:25:34 +04:00
Dmitry Stogov
afe66d89a1 Cleanup 2014-04-21 16:34:40 +04:00
Dmitry Stogov
f9b26bc39a Cleanup (2-nd round) 2014-04-15 21:56:30 +04:00
Bob Weinand
9663193bbc Merge branch 'PHP-5.6' 2014-04-11 10:11:58 +02:00
Bob Weinand
f614fc6898 Fix bug #66015 by reverting "Removed operations on constant arrays." 2014-04-11 10:08:44 +02:00
Dmitry Stogov
7402af380b Fixed destruction of objects and iterators on unclean request shutdown and GC (few cases are still unfixed).
Now we destroy objects it two steps. At first - object properties of all objects and only then the objects their selves.
2014-04-09 01:50:15 +04:00
Dmitry Stogov
76cc99fe60 Refactored ZVAL flags usage to simplify various checks (e.g. Z_REFCOUNTED(), candidate for GC, etc) 2014-04-03 15:26:23 +04:00
Dmitry Stogov
d8099d0468 Changed data layout to allow more efficient operations 2014-04-02 14:34:44 +04:00
Dmitry Stogov
8dedaf8512 Use interned strings for one character strings 2014-04-01 18:06:50 +04:00
Dmitry Stogov
3fc8449e1e Fixed interned strings support 2014-04-01 00:50:25 +04:00
Dmitry Stogov
fd4d11e053 fixes 2014-03-31 23:38:37 +04:00
Dmitry Stogov
47fdb9eae3 fixed craches at request shutdown and memory leaks 2014-03-31 16:09:45 +04:00
Dmitry Stogov
292b8dffc8 Make opcache work (incomplete - optimizer doesn't work yet; crashes on request shutdown) 2014-03-31 13:11:58 +04:00
Dmitry Stogov
5324f22f59 ext/opcache refactoring (incomplete) 2014-03-28 23:34:49 +04:00
Dmitry Stogov
b0927faf48 Merge branch 'PHP-5.6'
* PHP-5.6:
  Added information about interned strings usage
2014-02-21 12:45:12 +04:00
Dmitry Stogov
31f5515059 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Added information about interned strings usage

Conflicts:
	NEWS
2014-02-21 12:44:58 +04:00
Dmitry Stogov
851f362882 Added information about interned strings usage 2014-02-21 12:43:42 +04:00
Dmitry Stogov
f4cfaf36e2 Use better data structures (incomplete) 2014-02-10 10:04:30 +04:00
Dmitry Stogov
511a375e60 Merge branch 'PHP-5.6'
* PHP-5.6:
  Log information about cached scripts and keys
2014-01-15 12:15:41 +04:00
Dmitry Stogov
299d893f0a Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Log information about cached scripts and keys
2014-01-15 12:15:25 +04:00
Dmitry Stogov
7359dd6df3 Log information about cached scripts and keys 2014-01-15 12:12:22 +04:00
Dmitry Stogov
5980e987d2 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed ZTS build
2014-01-13 23:11:36 +04:00
Dmitry Stogov
029d019dac Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed ZTS build
2014-01-13 23:10:35 +04:00
Dmitry Stogov
9c32d30020 Fixed ZTS build 2014-01-13 23:09:59 +04:00
Dmitry Stogov
127eb33b84 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66461 (PHP crashes if opcache.interned_strings_buffer=0)
2014-01-13 18:07:26 +04:00
Dmitry Stogov
7864fcaec9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed bug #66461 (PHP crashes if opcache.interned_strings_buffer=0)

Conflicts:
	NEWS
2014-01-13 18:06:49 +04:00
Dmitry Stogov
ce2f024e9f Fixed bug #66461 (PHP crashes if opcache.interned_strings_buffer=0) 2014-01-13 18:05:21 +04:00
Dmitry Stogov
3458dac342 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed bug #66471 (Keep backward compatibility)
2014-01-13 15:36:06 +04:00
Dmitry Stogov
ca550248f1 Fixed bug #66471 (Keep backward compatibility) 2014-01-13 15:34:25 +04:00
Xinchen Hui
0f53e37494 Merge branch 'PHP-5.6' 2014-01-03 11:09:07 +08:00
Xinchen Hui
c081ce628f Bump year 2014-01-03 11:08:10 +08:00
Xinchen Hui
47c9027772 Bump year 2014-01-03 11:06:16 +08:00
Dmitry Stogov
65fd18fd88 Merge branch 'PHP-5.6'
* PHP-5.6:
  Improved empty string handling. Now ZE uses an interned string instead of allocation new empty string each time. (Some extensions might need to be fixed using str_efree() instead of efree() to support interned strings).

Conflicts:
	NEWS
	Zend/zend_extensions.h
	Zend/zend_modules.h
2013-12-26 14:51:05 +04:00
Dmitry Stogov
03a37de9b3 Improved empty string handling. Now ZE uses an interned string instead of allocation new empty string each time. (Some extensions might need to be fixed using str_efree() instead of efree() to support interned strings). 2013-12-26 14:47:13 +04:00
Dmitry Stogov
5bc9e006e8 Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed Issue #140: "opcache.enable_file_override" doesn't respect "opcache.revalidate_freq"
  fix news
  opcodes
  opcodes

Conflicts:
	NEWS
2013-12-23 12:52:27 +04:00
Dmitry Stogov
f5c200fce9 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed Issue #140: "opcache.enable_file_override" doesn't respect "opcache.revalidate_freq"
  opcodes
2013-12-23 12:50:42 +04:00
Dmitry Stogov
0dcaf0f445 Fixed Issue #140: "opcache.enable_file_override" doesn't respect "opcache.revalidate_freq" 2013-12-23 12:46:30 +04:00
Dmitry Stogov
26096aa73f Merge branch 'PHP-5.6'
* PHP-5.6:
  Fixed reavlidate_path=1 behavior to avoid caching of symlinks values.
2013-12-18 19:22:05 +04:00
Dmitry Stogov
436ca2d019 Merge branch 'PHP-5.5' into PHP-5.6
* PHP-5.5:
  Fixed reavlidate_path=1 behavior to avoid caching of symlinks values.

Conflicts:
	NEWS
2013-12-18 19:21:21 +04:00
Dmitry Stogov
16e95d9137 Fixed reavlidate_path=1 behavior to avoid caching of symlinks values. 2013-12-18 19:19:53 +04:00
Kalle Sommer Nielsen
0fc8e6af0a Eliminate another straight forward TSRMLS_FETCH() in zend_startup_module()
# For THTTPD:
# The code that uses a call to this function is for older versions of PHP anyway so its not covered

# For Zend OpCache:
# Added a new define for 5.6 and wrapped the code around that so its still compatible with older version
2013-12-12 20:30:45 +01:00