summaryrefslogtreecommitdiff
path: root/Zend/zend_vm_execute.h
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2019-05-30 20:35:30 +0300
committerDmitry Stogov <dmitry@zend.com>2019-05-30 20:35:30 +0300
commitee565529138891e757727de230af9051caeda05d (patch)
tree960a0abebe9dc8708b1c16fb1d4c820fb0753581 /Zend/zend_vm_execute.h
parent2ba9177d4f0de8c0c7fdc0ca6160415ec699f48d (diff)
downloadphp-git-ee565529138891e757727de230af9051caeda05d.tar.gz
Disable "bad" optimisations only for emulation loop
Diffstat (limited to 'Zend/zend_vm_execute.h')
-rw-r--r--Zend/zend_vm_execute.h8
1 files changed, 8 insertions, 0 deletions
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 89b36bde88..210f488de2 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -54854,6 +54854,11 @@ static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDL
#endif
+#if (ZEND_VM_KIND != ZEND_VM_KIND_CALL) && (ZEND_GCC_VERSION >= 4000) && !defined(__clang__)
+# pragma GCC push_options
+# pragma GCC optimize("no-gcse")
+# pragma GCC optimize("no-ivopts")
+#endif
ZEND_API void execute_ex(zend_execute_data *ex)
{
DCL_OPLINE
@@ -65700,6 +65705,9 @@ zend_leave_helper_SPEC_LABEL:
}
zend_error_noreturn(E_CORE_ERROR, "Arrived at end of main loop which shouldn't happen");
}
+#if (ZEND_VM_KIND != ZEND_VM_KIND_CALL) && (ZEND_GCC_VERSION >= 4000) && !defined(__clang__)
+# pragma GCC pop_options
+#endif
ZEND_API void zend_execute(zend_op_array *op_array, zval *return_value)
{