]> granicus.if.org Git - php/commitdiff
Avoid useless EG(exception) checks
authorDmitry Stogov <dmitry@zend.com>
Wed, 9 Sep 2015 08:54:44 +0000 (11:54 +0300)
committerDmitry Stogov <dmitry@zend.com>
Wed, 9 Sep 2015 08:54:44 +0000 (11:54 +0300)
Zend/zend_vm_def.h
Zend/zend_vm_execute.h

index 799a66e5ebc825103fcd88b8069ad7a5c776e113..193ea32c623a501cf6055ede243ced34aa6ce4a0 100644 (file)
@@ -6102,10 +6102,11 @@ ZEND_VM_HANDLER(78, ZEND_FE_FETCH_R, VAR, ANY)
                }
        } else {
                zend_error(E_WARNING, "Invalid argument supplied for foreach()");
-ZEND_VM_C_LABEL(fe_fetch_r_exit):
-               if (EXPECTED(!EG(exception))) {
-                       ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
+               if (UNEXPECTED(EG(exception))) {
+                       HANDLE_EXCEPTION();
                }
+ZEND_VM_C_LABEL(fe_fetch_r_exit):
+               ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
                ZEND_VM_CONTINUE();
        }
 
@@ -6293,10 +6294,11 @@ ZEND_VM_HANDLER(126, ZEND_FE_FETCH_RW, VAR, ANY)
                }
        } else {
                zend_error(E_WARNING, "Invalid argument supplied for foreach()");
-ZEND_VM_C_LABEL(fe_fetch_w_exit):
-               if (EXPECTED(!EG(exception))) {
-                       ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
+               if (UNEXPECTED(EG(exception))) {
+                       HANDLE_EXCEPTION();
                }
+ZEND_VM_C_LABEL(fe_fetch_w_exit):
+               ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
                ZEND_VM_CONTINUE();
        }
 
index a9cb1e6207f1ddf61f4ebe80d5b451b919c84f82..2889de55f25b97ad9f01e9610a4916a5787eb3f4 100644 (file)
@@ -15912,10 +15912,11 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FETCH_R_SPEC_VAR_HANDLER(ZE
                }
        } else {
                zend_error(E_WARNING, "Invalid argument supplied for foreach()");
-fe_fetch_r_exit:
-               if (EXPECTED(!EG(exception))) {
-                       ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
+               if (UNEXPECTED(EG(exception))) {
+                       HANDLE_EXCEPTION();
                }
+fe_fetch_r_exit:
+               ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
                ZEND_VM_CONTINUE();
        }
 
@@ -16103,10 +16104,11 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FETCH_RW_SPEC_VAR_HANDLER(Z
                }
        } else {
                zend_error(E_WARNING, "Invalid argument supplied for foreach()");
-fe_fetch_w_exit:
-               if (EXPECTED(!EG(exception))) {
-                       ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
+               if (UNEXPECTED(EG(exception))) {
+                       HANDLE_EXCEPTION();
                }
+fe_fetch_w_exit:
+               ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value);
                ZEND_VM_CONTINUE();
        }