summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2017-12-14 03:25:20 +0300
committerDmitry Stogov <dmitry@zend.com>2017-12-14 03:25:20 +0300
commit4d19bc2279ddbc9c4a07814b3c1b468938d44eae (patch)
tree7b7e31d6e0af20fc4445440e14a47b75f02eb33f
parentdd1050fa6cab48f0d26db32cf0a4007b40010311 (diff)
downloadphp-git-4d19bc2279ddbc9c4a07814b3c1b468938d44eae.tar.gz
Disable some "bad" GCC optimizations
-rw-r--r--Zend/zend_execute.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/Zend/zend_execute.c b/Zend/zend_execute.c
index fcc78f2eb9..d2dad66ad8 100644
--- a/Zend/zend_execute.c
+++ b/Zend/zend_execute.c
@@ -3050,8 +3050,18 @@ ZEND_API int ZEND_FASTCALL zend_do_fcall_overloaded(zend_execute_data *call, zva
} \
} while (0)
+#if ZEND_GCC_VERSION >= 4000
+# pragma GCC push_options
+# pragma GCC optimize("no-gcse")
+# pragma GCC optimize("no-ivopts")
+#endif
+
#include "zend_vm_execute.h"
+#if ZEND_GCC_VERSION >= 4000
+# pragma GCC pop_options
+#endif
+
ZEND_API int zend_set_user_opcode_handler(zend_uchar opcode, user_opcode_handler_t handler)
{
if (opcode != ZEND_USER_OPCODE) {