summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Young <chris@unsatisfactorysoftware.co.uk>2018-01-20 19:20:47 +0000
committerChris Young <chris@unsatisfactorysoftware.co.uk>2018-07-23 18:41:06 +0100
commitd0efc41ae5b2993d4774cc5d537c59fae6c8a4d9 (patch)
treef7ce564f227e45af019737ceb752ea2621014224
parent2e5909cc1113313385c6c3ec386d7fcec5700b61 (diff)
downloadtoolchains-d0efc41ae5b2993d4774cc5d537c59fae6c8a4d9.tar.gz
toolchains-d0efc41ae5b2993d4774cc5d537c59fae6c8a4d9.tar.bz2
Remove libnix glue
-rw-r--r--m68k-unknown-amigaos/recipes/patches/gcc/gcc6.p83
1 files changed, 0 insertions, 83 deletions
diff --git a/m68k-unknown-amigaos/recipes/patches/gcc/gcc6.p b/m68k-unknown-amigaos/recipes/patches/gcc/gcc6.p
index 6979667..8b4d30c 100644
--- a/m68k-unknown-amigaos/recipes/patches/gcc/gcc6.p
+++ b/m68k-unknown-amigaos/recipes/patches/gcc/gcc6.p
@@ -9660,50 +9660,6 @@ index 12067fdf5348..f0f069f6afa2 100644
/* Subclasses of rtx_def, using indentation to show the class
hierarchy, along with the relevant invariant.
-diff --git a/gcc/cp/g++spec.c b/gcc/cp/g++spec.c
-index 03cbde090cb3..83a5ab514c79 100644
---- gcc/cp/g++spec.c
-+++ gcc/cp/g++spec.c
-@@ -262,7 +262,7 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
- #endif
-
- /* Add one for shared_libgcc or extra static library. */
-- num_args = argc + added + need_math + (library > 0) * 4 + 1;
-+ num_args = argc + added + need_math + (library > 0) * 5 + 1;
- new_decoded_options = XNEWVEC (struct cl_decoded_option, num_args);
-
- i = 0;
-@@ -347,6 +347,30 @@ lang_specific_driver (struct cl_decoded_option **in_decoded_options,
- CL_DRIVER, &new_decoded_options[j]);
- added_libraries++;
- j++;
-+
-+#ifdef TARGET_AMIGA
-+ {
-+ bool addglue = true;
-+ /* do not add glue if exceptions are disabled. */
-+ for (int ii = 0; ii < argc; ++ii)
-+ {
-+ if (decoded_options[ii].opt_index == OPT_fexceptions)
-+ addglue = decoded_options[ii].value;
-+ }
-+ if (addglue)
-+ {
-+ extern const char *
-+ amiga_m68k_prefix_func (int argc, const char ** argv);
-+ char const * cxxglue = "../lib/gcc/m68k-amigaos/"
-+ DEFAULT_TARGET_VERSION
-+ "/cxxglue.o";
-+ char const * p = amiga_m68k_prefix_func (1, &cxxglue);
-+ generate_option_input_file (p, &new_decoded_options[j]);
-+ ++j;
-+ }
-+ }
-+#endif
-+
- /* Add target-dependent static library, if necessary. */
- if ((static_link || library > 1) && LIBSTDCXX_STATIC != NULL)
- {
diff --git a/gcc/df-scan.c b/gcc/df-scan.c
index 98de84405428..1f23452afe19 100644
--- gcc/df-scan.c
@@ -10434,34 +10390,6 @@ index 6f6810cf0baf..7117e7983b53 100644
m68k-*-elf* | fido-*-elf)
tmake_file="$tmake_file m68k/t-floatlib"
;;
-diff --git a/libgcc/config/m68k/cxxglue.c b/libgcc/config/m68k/cxxglue.c
-new file mode 100644
-index 000000000000..2a4e6374d088
---- /dev/null
-+++ libgcc/config/m68k/cxxglue.c
-@@ -0,0 +1,22 @@
-+#include "stabs.h"
-+
-+extern void __register_frame_info(void *, void *);
-+extern void * _EH_FRAME_BEGINS__;
-+extern void * _EH_FRAME_OBJECTS__;
-+
-+void __init_eh() {
-+ void ** frame = &_EH_FRAME_BEGINS__;
-+ void ** object = &_EH_FRAME_OBJECTS__;
-+
-+ int n = *(int *)frame++;
-+ int m = *(int *)object++;
-+ if (n != m)
-+ return;
-+
-+ while (n--) {
-+ __register_frame_info(*frame++, *object++);
-+ }
-+}
-+
-+ADD2INIT(__init_eh,127);
-+
diff --git a/libgcc/config/m68k/fpgnulib.c b/libgcc/config/m68k/fpgnulib.c
index fe41edf26aa0..90926104d8fd 100644
--- libgcc/config/m68k/fpgnulib.c
@@ -10747,17 +10675,6 @@ index 1ee8782d9fd2..2365433a59b3 100644
+ cat $< >> xfpgnulib__cmpxf2.c
+
\ No newline at end of file
-diff --git a/libgcc/config/m68k/t-glue b/libgcc/config/m68k/t-glue
-new file mode 100644
-index 000000000000..09cf7b47911c
---- /dev/null
-+++ libgcc/config/m68k/t-glue
-@@ -0,0 +1,5 @@
-+cxxglue.o: $(srcdir)/config/m68k/cxxglue.c
-+ $(CC) $(CFLAGS) -c $< -noixemul
-+
-+EXTRA_PARTS=cxxglue.o
-+
diff --git a/libgcc/unwind-dw2.c b/libgcc/unwind-dw2.c
index 1fb6026d123f..7bf0e4236f64 100644
--- libgcc/unwind-dw2.c