aboutsummaryrefslogtreecommitdiffstats
path: root/tools/sdcc/patches
diff options
context:
space:
mode:
Diffstat (limited to 'tools/sdcc/patches')
-rw-r--r--tools/sdcc/patches/100-workaround-gcc-4.6.2-hang.patch20
-rw-r--r--tools/sdcc/patches/200-fix_order_of_linking.patch92
2 files changed, 112 insertions, 0 deletions
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 000000000..71db14f81
--- /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
+
+
+ /*-----------------------------------------------------------------*/
diff --git a/tools/sdcc/patches/200-fix_order_of_linking.patch b/tools/sdcc/patches/200-fix_order_of_linking.patch
new file mode 100644
index 000000000..644349755
--- /dev/null
+++ b/tools/sdcc/patches/200-fix_order_of_linking.patch
@@ -0,0 +1,92 @@
+diff --git a/sdcc/sdas/as6808/Makefile.in b/sdcc/sdas/as6808/Makefile.in
+index 5041265..0b8732e 100644
+--- a/sdas/as6808/Makefile.in
++++ b/sdas/as6808/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/as8051/Makefile.in b/sdcc/sdas/as8051/Makefile.in
+index 8fa5946..fde3001 100644
+--- a/sdas/as8051/Makefile.in
++++ b/sdas/as8051/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/asgb/Makefile.in b/sdcc/sdas/asgb/Makefile.in
+index 2763b3f..f9afb23 100644
+--- a/sdas/asgb/Makefile.in
++++ b/sdas/asgb/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------
+diff --git a/sdcc/sdas/asz80/Makefile.in b/sdcc/sdas/asz80/Makefile.in
+index d2bf1ac..89bd91c 100644
+--- a/sdas/asz80/Makefile.in
++++ b/sdas/asz80/Makefile.in
+@@ -36,7 +36,8 @@ VPATH = @srcdir@
+
+ CPPFLAGS = @CPPFLAGS@ -DSDCDB -DNOICE -DINDEXLIB -I. -I$(srcdir) -I$(srcdir)/../asxxsrc -I$(srcdir)/../../support/Util
+ CFLAGS = @CFLAGS@ @WALL_FLAG@ $(CPPFLAGS)
+-LDFLAGS = @LDFLAGS@ -lm
++LDFLAGS = @LDFLAGS@
++LIBS = -lm
+
+ OBJDIR = obj
+
+@@ -65,7 +66,7 @@ transform = @program_transform_name@
+ all: checkconf $(ASX)
+
+ $(ASX): $(ASOBJECTS)
+- $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS)
++ $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $(ASOBJECTS) $(LIBS)
+
+ # Compiling and installing everything and running test
+ # ----------------------------------------------------