From 8d70b04a1c33a756212d0ba3a48260dc03925482 Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Tue, 22 Nov 2016 11:50:48 +0300 Subject: [PATCH] Removed useless (double) checks for EG(exception). (Bob) --- Zend/zend_execute.c | 12 +++++------ Zend/zend_vm_def.h | 15 -------------- Zend/zend_vm_execute.h | 45 ------------------------------------------ 3 files changed, 6 insertions(+), 66 deletions(-) diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c index 352caae2bf..647428f959 100644 --- a/Zend/zend_execute.c +++ b/Zend/zend_execute.c @@ -2937,13 +2937,13 @@ static zend_never_inline int zend_do_fcall_overloaded(zend_function *fbc, zend_e #define ZEND_VM_SET_RELATIVE_OPCODE(opline, offset) \ ZEND_VM_SET_OPCODE(ZEND_OFFSET_TO_OPLINE(opline, offset)) -#define ZEND_VM_JMP(new_op) \ - if (EXPECTED(!EG(exception))) { \ +#define ZEND_VM_JMP(new_op) do { \ + if (UNEXPECTED(EG(exception))) { \ + HANDLE_EXCEPTION(); \ + } \ ZEND_VM_SET_OPCODE(new_op); \ - } else { \ - LOAD_OPLINE(); \ - } \ - ZEND_VM_CONTINUE() + ZEND_VM_CONTINUE(); \ + } while (0) #define ZEND_VM_INC_OPCODE() \ OPLINE++ diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 78342a0636..fa759f0372 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -2709,9 +2709,6 @@ ZEND_VM_HANDLER(43, ZEND_JMPZ, CONST|TMPVAR|CV, JMP_ADDR) opline = OP_JMP_ADDR(opline, opline->op2); } FREE_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2743,9 +2740,6 @@ ZEND_VM_HANDLER(44, ZEND_JMPNZ, CONST|TMPVAR|CV, JMP_ADDR) opline++; } FREE_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2780,9 +2774,6 @@ ZEND_VM_HANDLER(45, ZEND_JMPZNZ, CONST|TMPVAR|CV, JMP_ADDR, JMP_ADDR) opline = OP_JMP_ADDR(opline, opline->op2); } FREE_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2823,9 +2814,6 @@ ZEND_VM_HANDLER(46, ZEND_JMPZ_EX, CONST|TMPVAR|CV, JMP_ADDR) ZVAL_FALSE(EX_VAR(opline->result.var)); opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2863,9 +2851,6 @@ ZEND_VM_HANDLER(47, ZEND_JMPNZ_EX, CONST|TMPVAR|CV, JMP_ADDR) ZVAL_FALSE(EX_VAR(opline->result.var)); opline++; } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index a8a0466b5a..18234bccb0 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -2706,9 +2706,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_SPEC_CONST_HANDLER(ZEND_O opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2740,9 +2737,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_SPEC_CONST_HANDLER(ZEND_ opline++; } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2777,9 +2771,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZNZ_SPEC_CONST_HANDLER(ZEND opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2820,9 +2811,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_CONST_HANDLER(ZEN ZVAL_FALSE(EX_VAR(opline->result.var)); opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -2860,9 +2848,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_CONST_HANDLER(ZE ZVAL_FALSE(EX_VAR(opline->result.var)); opline++; } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -34707,9 +34692,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_SPEC_CV_HANDLER(ZEND_OPCO opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -34741,9 +34723,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_SPEC_CV_HANDLER(ZEND_OPC opline++; } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -34778,9 +34757,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZNZ_SPEC_CV_HANDLER(ZEND_OP opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -34821,9 +34797,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_CV_HANDLER(ZEND_O ZVAL_FALSE(EX_VAR(opline->result.var)); opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -34861,9 +34834,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_CV_HANDLER(ZEND_ ZVAL_FALSE(EX_VAR(opline->result.var)); opline++; } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -51296,9 +51266,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_SPEC_TMPVAR_HANDLER(ZEND_ opline = OP_JMP_ADDR(opline, opline->op2); } zval_ptr_dtor_nogc(free_op1); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -51330,9 +51297,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_SPEC_TMPVAR_HANDLER(ZEND opline++; } zval_ptr_dtor_nogc(free_op1); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -51367,9 +51331,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER(ZEN opline = OP_JMP_ADDR(opline, opline->op2); } zval_ptr_dtor_nogc(free_op1); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -51410,9 +51371,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER(ZE ZVAL_FALSE(EX_VAR(opline->result.var)); opline = OP_JMP_ADDR(opline, opline->op2); } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } @@ -51450,9 +51408,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER(Z ZVAL_FALSE(EX_VAR(opline->result.var)); opline++; } - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } ZEND_VM_JMP(opline); } -- 2.40.0