Re: com php-src: Remove dead code from ZEND_THROW: Zend/zend_vm_def.h Zend/zend_vm_execute.h
| From: | Dmitry Stogov | Date: | Tue, 06 May 2014 18:22:12 +0000 |
| Subject: | Re: com php-src: Remove dead code from ZEND_THROW: Zend/zend_vm_def.h Zend/zend_vm_execute.h | ||
| References: | 1 | Groups: | php.cvs |
| Request: | Send a blank email to php-cvs+get-78149@lists.php.net to get a copy of this message | ||
Are you sure it's dead?
throw 5; - is a legal syntax
Thanks. Dmitry.
On Tue, May 6, 2014 at 10:02 PM, Nikita Popov <nikic@php.net> wrote:
> Commit: 80f8d20b7258395dbc85f62cc20ee043df9bacc2
> Author: Nikita Popov <nikic@php.net> Tue, 6 May 2014 20:02:26
> +0200
> Parents: 767b5eea7e23b85fc8e9c83eaca3ed958e2e1aef
> Branches: phpng
>
> Link:
>
> http://git.php.net/?p=php-src.git;a=commitdiff;h=80f8d20b7258395dbc85f62cc20ee043df9bacc2
>
> Log:
> Remove dead code from ZEND_THROW
>
> The IS_CONST case always throws an E_ERROR two lines above that,
> so no need to handle it further.
>
> Changed paths:
> M Zend/zend_vm_def.h
> M Zend/zend_vm_execute.h
>
>
> Diff:
> diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
> index 7657b6d..afb569b 100644
> --- a/Zend/zend_vm_def.h
> +++ b/Zend/zend_vm_def.h
> @@ -2913,7 +2913,6 @@ ZEND_VM_HANDLER(108, ZEND_THROW, CONST|TMP|VAR|CV,
> ANY)
> {
> USE_OPLINE
> zval *value;
> - zval exception;
> zend_free_op free_op1;
>
> SAVE_OPLINE();
> @@ -2927,10 +2926,7 @@ ZEND_VM_HANDLER(108, ZEND_THROW, CONST|TMP|VAR|CV,
> ANY)
> }
>
> zend_exception_save(TSRMLS_C);
> - if (OP1_TYPE == IS_CONST) {
> - ZVAL_DUP(&exception, value);
> - value = &exception;
> - } else if (OP1_TYPE != IS_TMP_VAR) {
> + if (OP1_TYPE != IS_TMP_VAR) {
> if (Z_REFCOUNTED_P(value)) Z_ADDREF_P(value);
> }
>
> diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
> index e803acb..d4d58b1 100644
> --- a/Zend/zend_vm_execute.h
> +++ b/Zend/zend_vm_execute.h
> @@ -2663,7 +2663,6 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS
> {
> USE_OPLINE
> zval *value;
> - zval exception;
>
>
> SAVE_OPLINE();
> @@ -2677,10 +2676,7 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS
> }
>
> zend_exception_save(TSRMLS_C);
> - if (IS_CONST == IS_CONST) {
> - ZVAL_DUP(&exception, value);
> - value = &exception;
> - } else if (IS_CONST != IS_TMP_VAR) {
> + if (IS_CONST != IS_TMP_VAR) {
> if (Z_REFCOUNTED_P(value)) Z_ADDREF_P(value);
> }
>
> @@ -7774,7 +7770,6 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
> {
> USE_OPLINE
> zval *value;
> - zval exception;
> zend_free_op free_op1;
>
> SAVE_OPLINE();
> @@ -7788,10 +7783,7 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
> }
>
> zend_exception_save(TSRMLS_C);
> - if (IS_TMP_VAR == IS_CONST) {
> - ZVAL_DUP(&exception, value);
> - value = &exception;
> - } else if (IS_TMP_VAR != IS_TMP_VAR) {
> + if (IS_TMP_VAR != IS_TMP_VAR) {
> if (Z_REFCOUNTED_P(value)) Z_ADDREF_P(value);
> }
>
> @@ -12842,7 +12834,6 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
> {
> USE_OPLINE
> zval *value;
> - zval exception;
> zend_free_op free_op1;
>
> SAVE_OPLINE();
> @@ -12856,10 +12847,7 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
> }
>
> zend_exception_save(TSRMLS_C);
> - if (IS_VAR == IS_CONST) {
> - ZVAL_DUP(&exception, value);
> - value = &exception;
> - } else if (IS_VAR != IS_TMP_VAR) {
> + if (IS_VAR != IS_TMP_VAR) {
> if (Z_REFCOUNTED_P(value)) Z_ADDREF_P(value);
> }
>
> @@ -29905,7 +29893,6 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
> {
> USE_OPLINE
> zval *value;
> - zval exception;
>
>
> SAVE_OPLINE();
> @@ -29919,10 +29906,7 @@ static int ZEND_FASTCALL
> ZEND_THROW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS)
> }
>
> zend_exception_save(TSRMLS_C);
> - if (IS_CV == IS_CONST) {
> - ZVAL_DUP(&exception, value);
> - value = &exception;
> - } else if (IS_CV != IS_TMP_VAR) {
> + if (IS_CV != IS_TMP_VAR) {
> if (Z_REFCOUNTED_P(value)) Z_ADDREF_P(value);
> }
>
>
> --
> PHP CVS Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>