Commit graph

508 commits

Author SHA1 Message Date
Anatol Belski
673003757f C89 fixes 2014-12-16 12:20:59 +01:00
Anatol Belski
bee4a28433 use portable struct stat 2014-12-16 12:20:58 +01:00
Anatol Belski
f1d1185c64 fixed macro va args expansion for vs 2014-12-16 12:20:57 +01:00
Anatol Belski
e112f6a04e second shot on removing TSRMLS_* 2014-12-14 14:07:59 +01:00
Anatol Belski
bdeb220f48 first shot remove TSRMLS_* things 2014-12-13 23:06:14 +01:00
Dmitry Stogov
14e29f5146 Reduced size of zend_op on 64-bit systems.
the main idea - the smaller the zend_op structure, the lees memory traffic is required to load VM instructions during execution. The patch reduces the size of each opcode from 48 to 32 bytes (saves 16 bytes for each opcode, and applications use thousands of opoceds). This reduced the number of CPU cache misses by 12% and improved performance of real-life apps by 1-2%.

The patch affects how constants and jump targets are represented in VM during execution. Previously they were implemented as absolute 64-bit pointers. Now they are relative 32-bit offsets.

In run-time constant now should be accessed as:
  RT_CONSTANT(op_array, opine->op1) instead of opline->op1.zv
  EX_CONSTANT(opline->op1) instead of opline->op1.zv

Jump targets:
  OP_JMP_ADDR(opline, opline->op2) instead of opline->op2.jmp_addr

The patch doesn't change zend_op representation for 32-bit systems. They still use absolute addresses. The compile-time representation is also kept the same.
2014-12-12 10:19:41 +03:00
Ferenc Kovacs
82979862ba fix phpdbg, _zend_execute_data.scope was removed with 9a36cb1a07 2014-11-28 22:12:02 +01:00
Ferenc Kovacs
aef51819ce typo fix 2014-11-26 18:41:50 +01:00
Ferenc Kovacs
0afc04b913 go back with phpdbg to the state of 5.6.3, reverting the controversial commits(remote debugging/xml protocol) 2014-11-26 18:38:36 +01:00
Veres Lajos
06fdf359e3 typo fixes - https://github.com/vlajos/misspell_fixer 2014-11-23 14:52:47 -08:00
Veres Lajos
4dc994571d typo fixes - https://github.com/vlajos/misspell_fixer
Conflicts:
	ext/ftp/ftp.h
	ext/pcre/pcrelib/pcre_printint.c
	ext/pcre/pcrelib/sljit/sljitLir.c
	ext/pcre/pcrelib/sljit/sljitLir.h
	ext/pcre/pcrelib/sljit/sljitNativeARM_32.c
	ext/pcre/pcrelib/sljit/sljitNativeTILEGX_64.c
	ext/pgsql/pgsql.c
	ext/phar/func_interceptors.c
	ext/soap/soap.c
	ext/standard/image.c
2014-11-23 14:33:43 -08:00
Bob Weinand
113f1fd6d5 Temporarily disable wait/xml protocol... 2014-10-30 23:09:57 +01:00
Ferenc Kovacs
12fba83c48 Merge branch 'PHP-5.6'
* PHP-5.6:
  don't try to send in the test results until we restored qa.php.net
  Fix uninitialized value...
  Don't treat warnings as failures in the junit output
2014-10-30 18:19:48 +01:00
Bob Weinand
b9d1dc329f Merge phpdbg into PHP-5.6 2014-10-30 13:17:58 +01:00
Anatol Belski
d77ce31763 Merge branch 'PHP-5.6'
* PHP-5.6:
  fix output globals importing
  export output globals
  use portable strndup implementation
  unix sockets aren't available on windows
  dll export APIs needed by phpdbg
  fix sapi/phpdbg/config.w32
  Don't treat warnings as failures in the junit output
2014-10-29 20:04:56 +01:00
Anatol Belski
fc904569ea fix output globals importing 2014-10-29 20:03:28 +01:00
Anatol Belski
4b8f411d31 use portable strndup implementation 2014-10-29 19:49:20 +01:00
Anatol Belski
f842b8f4be unix sockets aren't available on windows 2014-10-29 19:39:46 +01:00
Anatol Belski
79a4339f1b fix sapi/phpdbg/config.w32 2014-10-29 19:28:21 +01:00
Bob Weinand
3e9138e6b5 Merge remote-tracking branch 'origin/PHP-5.6' 2014-10-29 11:44:46 +01:00
Bob Weinand
68b5dd2ba9 Merge phpdbg into PHP-5.6 2014-10-29 11:43:01 +01:00
Remi Collet
770473a648 Merge branch 'PHP-5.6'
* PHP-5.6:
  cleanup uneeded json
2014-10-29 07:26:58 +01:00
Remi Collet
7dd871438f cleanup uneeded json 2014-10-29 07:26:41 +01:00
Bob Weinand
4fec48d1b0 Merge remote-tracking branch 'origin/PHP-5.6' 2014-10-28 23:07:46 +01:00
Bob Weinand
47fd168fed Move missing zend_hash_* macros from phpdbg.h to zend_hash.h 2014-10-28 23:07:36 +01:00
Bob Weinand
a5415456d4 Merge phpdbg into PHP-5.6 2014-10-28 23:06:50 +01:00
Bob Weinand
66aead4b5f Merge remote-tracking branch 'origin/PHP-5.6'
Conflicts:
	sapi/phpdbg/phpdbg_wait.c
	sapi/phpdbg/phpdbg_webdata_transfer.c
2014-10-28 23:00:10 +01:00
Bob Weinand
be5d389768 Merge phpdbg into PHP-5.6 2014-10-28 22:44:29 +01:00
Bob Weinand
6150d9342c Merge ../phpdbg into PHP-5.6
Conflicts:
	sapi/phpdbg/config.m4
2014-10-28 22:15:05 +01:00
Remi Collet
9afb17868c Merge branch 'PHP-5.6'
* PHP-5.6:
  fix phpdbg build when src tree != build tree
2014-10-28 19:13:27 +01:00
Remi Collet
9028846c63 fix phpdbg build when src tree != build tree 2014-10-28 19:12:41 +01:00
Bob Weinand
ec53351447 Merge remote-tracking branch 'origin/PHP-5.6'
Conflicts:
	configure.in
	main/php_version.h
	sapi/phpdbg/phpdbg.c
	sapi/phpdbg/phpdbg_bp.c
	sapi/phpdbg/phpdbg_prompt.c
2014-10-28 17:40:27 +01:00
Bob Weinand
297baa0c18 Remove the ugly hack via a temp file to store breakpoints 2014-10-28 17:25:48 +01:00
Bob Weinand
fd8a70b1ee Typo (notfoundc => notfound) 2014-10-28 17:25:46 +01:00
Bob Weinand
76bd799eb7 Fix quitting on a second run 2014-10-28 17:25:46 +01:00
Bob Weinand
c34fd92466 Fix wrong exec length on relative paths 2014-10-28 17:25:45 +01:00
Bob Weinand
cc3587f4a3 Fix possibly unclosed <stream> tags 2014-10-28 17:25:45 +01:00
Bob Weinand
79c66e7cd2 Fix potential segfaults and unresolved breaks 2014-10-28 17:25:43 +01:00
Bob Weinand
fe5f5d40f2 *Always* clean up and run destructors 2014-10-28 17:25:43 +01:00
Bob Weinand
baba4254ce Merge remote-tracking branch 'origin/PHP-5.6'
Conflicts:
	sapi/phpdbg/phpdbg_bp.c
2014-10-27 14:32:58 +01:00
Bob Weinand
0ede82d466 Merge phpdbg into PHP-5.6 2014-10-27 14:07:26 +01:00
Bob Weinand
a3ae401524 Merge remote-tracking branch 'origin/PHP-5.6' 2014-10-27 13:19:33 +01:00
Bob Weinand
6eab2b9101 Merge phpdbg into PHP-5.6
Conflicts:
	sapi/phpdbg/phpdbg.c
	sapi/phpdbg/phpdbg_prompt.c
2014-10-27 13:11:13 +01:00
Bob Weinand
09da8952d0 Merge remote-tracking branch 'origin/PHP-5.6'
Conflicts:
	sapi/phpdbg/phpdbg.c
	sapi/phpdbg/phpdbg_bp.c
	sapi/phpdbg/phpdbg_list.c
	sapi/phpdbg/phpdbg_parser.c
	sapi/phpdbg/phpdbg_parser.h
	sapi/phpdbg/phpdbg_prompt.c
2014-10-27 00:34:56 +01:00
Bob Weinand
50756b515c Do not execute anything after quit or clean command 2014-10-27 00:00:19 +01:00
Bob Weinand
190f4f9f18 Fix last commit, and do not output unnecessary information 2014-10-27 00:00:18 +01:00
Bob Weinand
3ab7734b88 Stabilize execution, always run destructors and extended file breakpoints 2014-10-27 00:00:16 +01:00
Bob Weinand
69bc61de41 Fix nullptr dereference in clean without exec context 2014-10-27 00:00:15 +01:00
krakjoe
41537cdddc remove dodgy param parser, bring userland breakpoint api inline with PHP7 2014-10-27 00:00:14 +01:00
krakjoe
51c1cc4ff5 disable output buffering by default 2014-10-27 00:00:14 +01:00