From 0172f198e39544e2d96b16e4a5d1bc18265f936d Mon Sep 17 00:00:00 2001 From: Dmitry Stogov Date: Mon, 26 Oct 2015 16:01:20 +0300 Subject: [PATCH] Fixed inconsistent exception handling (uopz/tests/006.phpt was failed when PHP build with --disable-gcc-global-regs). --- Zend/zend_vm_def.h | 3 +-- Zend/zend_vm_execute.h | 3 +-- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h index 4d5c2578afc..ad6dc58ec9b 100644 --- a/Zend/zend_vm_def.h +++ b/Zend/zend_vm_def.h @@ -7170,7 +7170,7 @@ ZEND_VM_HANDLER(150, ZEND_USER_OPCODE, ANY, ANY) SAVE_OPLINE(); ret = zend_user_opcode_handlers[opline->opcode](execute_data); - LOAD_OPLINE(); + opline = EX(opline); switch (ret) { case ZEND_USER_OPCODE_CONTINUE: @@ -7186,7 +7186,6 @@ ZEND_VM_HANDLER(150, ZEND_USER_OPCODE, ANY, ANY) case ZEND_USER_OPCODE_ENTER: ZEND_VM_ENTER(); case ZEND_USER_OPCODE_LEAVE: - LOAD_OPLINE(); ZEND_VM_LEAVE(); case ZEND_USER_OPCODE_DISPATCH: ZEND_VM_DISPATCH(opline->opcode, opline); diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h index e7257f11864..97e08b75f93 100644 --- a/Zend/zend_vm_execute.h +++ b/Zend/zend_vm_execute.h @@ -1566,7 +1566,7 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_USER_OPCODE_SPEC_HANDLER(ZEND_ SAVE_OPLINE(); ret = zend_user_opcode_handlers[opline->opcode](execute_data); - LOAD_OPLINE(); + opline = EX(opline); switch (ret) { case ZEND_USER_OPCODE_CONTINUE: @@ -1582,7 +1582,6 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_USER_OPCODE_SPEC_HANDLER(ZEND_ case ZEND_USER_OPCODE_ENTER: ZEND_VM_ENTER(); case ZEND_USER_OPCODE_LEAVE: - LOAD_OPLINE(); ZEND_VM_LEAVE(); case ZEND_USER_OPCODE_DISPATCH: ZEND_VM_DISPATCH(opline->opcode, opline);