From a43d754f462c6e51bf61d0845f13fab94c5b8f94 Mon Sep 17 00:00:00 2001 From: Jo-Philipp Wich Date: Tue, 10 Apr 2012 13:18:45 +0000 Subject: [PATCH] [tools] sdcc: compiling SDCCicode.c with -O2 sends gcc 4.6.x into an infinite loop, workaround it See references: http://sourceforge.net/tracker/?func=detail&aid=3285611&group_id=599&atid=300599 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52653 SVN-Revision: 31236 --- .../100-workaround-gcc-4.6.2-hang.patch | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch diff --git a/tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch b/tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch new file mode 100644 index 0000000000..71db14f816 --- /dev/null +++ b/tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch @@ -0,0 +1,20 @@ +--- a/src/SDCCicode.c ++++ b/src/SDCCicode.c +@@ -1130,6 +1130,9 @@ iCode *getBuiltinParms (iCode *ic, int * + return ic; + } + ++#pragma GCC push_options ++#pragma GCC optimize ("O0") ++ + /*-----------------------------------------------------------------*/ + /* operandOperation - performs operations on operands */ + /*-----------------------------------------------------------------*/ +@@ -1405,6 +1408,7 @@ operandOperation (operand * left, operan + + return retval; + } ++#pragma GCC pop_options + + + /*-----------------------------------------------------------------*/ -- 2.30.2