Re: [PHP-CVS] com php-src: Fix non-specialized executor build: Zend/zend_vm_def.h
On 21 June 2013 11:01, Dmitry Stogov wrote: > I think it's better to apply the same patch to 5.4 and 5.5 as well. > It's absolutely safe. > OK done! -- Ard. > Thanks. Dmitry. > > > On Fri, Jun 21, 2013 at 12:51 PM, Ard Biesheuvel > wrote: >> >> On 20 June 2013 23:28, Christopher Jones >> wrote: >> > Your @internals mail said "building the executor without >> > specialization is broken" so the patch seems like a standard bug fix >> > that should be merged to 5.4 & 5.5. >> > >> >> By 'building' I mean running 'zend_vm_gen.php --without-specializer' >> to generate zend_vm_opcodes.h and zend_vm_execute.h, which is a way >> that is arguably non-standard, proven by the fact that this particular >> mode has been broken since November 2010. In fact, when running this >> script in the conventional way, the produced code is identical to the >> code that is already in the repository. >> >> @Dmitry: there's a request to backport the FREE_OP2() fixes to 5.5 and >> 5.4, what do you think? >> >> -- >> Ard. > > -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] com php-src: Fix non-specialized executor build: Zend/zend_vm_def.h
I think it's better to apply the same patch to 5.4 and 5.5 as well. It's absolutely safe. Thanks. Dmitry. On Fri, Jun 21, 2013 at 12:51 PM, Ard Biesheuvel wrote: > On 20 June 2013 23:28, Christopher Jones > wrote: > > Your @internals mail said "building the executor without > > specialization is broken" so the patch seems like a standard bug fix > > that should be merged to 5.4 & 5.5. > > > > By 'building' I mean running 'zend_vm_gen.php --without-specializer' > to generate zend_vm_opcodes.h and zend_vm_execute.h, which is a way > that is arguably non-standard, proven by the fact that this particular > mode has been broken since November 2010. In fact, when running this > script in the conventional way, the produced code is identical to the > code that is already in the repository. > > @Dmitry: there's a request to backport the FREE_OP2() fixes to 5.5 and > 5.4, what do you think? > > -- > Ard. >
Re: [PHP-CVS] com php-src: Fix non-specialized executor build: Zend/zend_vm_def.h
On 20 June 2013 23:28, Christopher Jones wrote: > Your @internals mail said "building the executor without > specialization is broken" so the patch seems like a standard bug fix > that should be merged to 5.4 & 5.5. > By 'building' I mean running 'zend_vm_gen.php --without-specializer' to generate zend_vm_opcodes.h and zend_vm_execute.h, which is a way that is arguably non-standard, proven by the fact that this particular mode has been broken since November 2010. In fact, when running this script in the conventional way, the produced code is identical to the code that is already in the repository. @Dmitry: there's a request to backport the FREE_OP2() fixes to 5.5 and 5.4, what do you think? -- Ard. -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] com php-src: Fix non-specialized executor build: Zend/zend_vm_def.h
On 06/20/2013 02:14 PM, Ard Biesheuvel wrote: On 20 June 2013 23:00, Christopher Jones wrote: On 06/20/2013 08:26 AM, Ard Biesheuvel wrote: Commit:4cd2b7212fd15af5631b95685fa966dc101a84ff Author:Ard Biesheuvel Thu, 20 Jun 2013 17:26:05 +0200 Parents: 3e6b312b55ef8044ba1cea44f8986e2375dc6195 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=4cd2b7212fd15af5631b95685fa966dc101a84ff Log: Fix non-specialized executor build Removed a couple of calls to FREE_OP2() that were left behind in the handlers for break and continue opcodes after commit 7628da98 Changed paths: M Zend/zend_vm_def.h Doesn't this need to be merged back to PHP 5.5 (and added to NEWS)? Hey Chris, Considering that zend_vm_def.h is only a template used to generate zend_vm_execute.h and zend_vm_opcodes.h, which I will not be regenerating and submitting for 5.4 and 5.5 (given their stable and RC status respectively), I am not sure there is any merit to merging these changes to those trees as well. Your @internals mail said "building the executor without specialization is broken" so the patch seems like a standard bug fix that should be merged to 5.4 & 5.5. Chris -- christopher.jo...@oracle.com http://twitter.com/ghrd Free PHP & Oracle book: http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] com php-src: Fix non-specialized executor build: Zend/zend_vm_def.h
On 20 June 2013 23:00, Christopher Jones wrote: > On 06/20/2013 08:26 AM, Ard Biesheuvel wrote: >> >> Commit:4cd2b7212fd15af5631b95685fa966dc101a84ff >> Author:Ard Biesheuvel Thu, 20 Jun >> 2013 17:26:05 +0200 >> Parents: 3e6b312b55ef8044ba1cea44f8986e2375dc6195 >> Branches: master >> >> Link: >> http://git.php.net/?p=php-src.git;a=commitdiff;h=4cd2b7212fd15af5631b95685fa966dc101a84ff >> >> Log: >> Fix non-specialized executor build >> >> Removed a couple of calls to FREE_OP2() that were left behind in >> the handlers for break and continue opcodes after commit 7628da98 >> >> Changed paths: >>M Zend/zend_vm_def.h > > > Doesn't this need to be merged back to PHP 5.5 (and added to NEWS)? > Hey Chris, Considering that zend_vm_def.h is only a template used to generate zend_vm_execute.h and zend_vm_opcodes.h, which I will not be regenerating and submitting for 5.4 and 5.5 (given their stable and RC status respectively), I am not sure there is any merit to merging these changes to those trees as well. -- Ard. > Chris > >> >> >> Diff: >> diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h >> index 369f945..a15e4c6 100644 >> --- a/Zend/zend_vm_def.h >> +++ b/Zend/zend_vm_def.h >> @@ -3299,7 +3299,6 @@ ZEND_VM_HANDLER(50, ZEND_BRK, ANY, CONST) >> SAVE_OPLINE(); >> el = zend_brk_cont(Z_LVAL_P(opline->op2.zv), >> opline->op1.opline_num, >>EX(op_array), execute_data TSRMLS_CC); >> - FREE_OP2(); >> ZEND_VM_JMP(EX(op_array)->opcodes + el->brk); >> } >> >> @@ -3311,7 +3310,6 @@ ZEND_VM_HANDLER(51, ZEND_CONT, ANY, CONST) >> SAVE_OPLINE(); >> el = zend_brk_cont(Z_LVAL_P(opline->op2.zv), >> opline->op1.opline_num, >>EX(op_array), execute_data TSRMLS_CC); >> - FREE_OP2(); >> ZEND_VM_JMP(EX(op_array)->opcodes + el->cont); >> } >> >> > > -- > christopher.jo...@oracle.com http://twitter.com/ghrd > Free PHP & Oracle book: > http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php
Re: [PHP-CVS] com php-src: Fix non-specialized executor build: Zend/zend_vm_def.h
On 06/20/2013 08:26 AM, Ard Biesheuvel wrote: Commit:4cd2b7212fd15af5631b95685fa966dc101a84ff Author:Ard Biesheuvel Thu, 20 Jun 2013 17:26:05 +0200 Parents: 3e6b312b55ef8044ba1cea44f8986e2375dc6195 Branches: master Link: http://git.php.net/?p=php-src.git;a=commitdiff;h=4cd2b7212fd15af5631b95685fa966dc101a84ff Log: Fix non-specialized executor build Removed a couple of calls to FREE_OP2() that were left behind in the handlers for break and continue opcodes after commit 7628da98 Changed paths: M Zend/zend_vm_def.h Doesn't this need to be merged back to PHP 5.5 (and added to NEWS)? Chris Diff: diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 369f945..a15e4c6 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -3299,7 +3299,6 @@ ZEND_VM_HANDLER(50, ZEND_BRK, ANY, CONST) SAVE_OPLINE(); el = zend_brk_cont(Z_LVAL_P(opline->op2.zv), opline->op1.opline_num, EX(op_array), execute_data TSRMLS_CC); - FREE_OP2(); ZEND_VM_JMP(EX(op_array)->opcodes + el->brk); } @@ -3311,7 +3310,6 @@ ZEND_VM_HANDLER(51, ZEND_CONT, ANY, CONST) SAVE_OPLINE(); el = zend_brk_cont(Z_LVAL_P(opline->op2.zv), opline->op1.opline_num, EX(op_array), execute_data TSRMLS_CC); - FREE_OP2(); ZEND_VM_JMP(EX(op_array)->opcodes + el->cont); } -- christopher.jo...@oracle.com http://twitter.com/ghrd Free PHP & Oracle book: http://www.oracle.com/technetwork/topics/php/underground-php-oracle-manual-098250.html -- PHP CVS Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php