Subject: bug#2403: GCPROs and UNGCPRO should be no-ops also on SuperH

From: Ulrich Mueller <[email-masked]>
Date: Sat, 4 Apr 2009 23:42:44 +0200

>> Since almost all other arches do it, I wonder if this shouldn't be
>> done for GNU/Linux on SuperH, too. That is, add "|| defined __sh__"
>> to the large #if statement in src/s/gnu-linux.h .

> Yes, it's probably a good idea, but we first need to check.
> If you have access to such an arch, please try it out.

Gentoo SuperH architecture team has tested it, and they find that
Emacs builds and works with that definition added.

Whereas without it, the build on SuperH fails with a bus error, as
mentioned on this bug report before.

So please commit attached patch.

2009-04-04  Ulrich Mueller  <[email-masked]>

	* s/gnu-linux.h: Make GCPROs and UNGCPRO no-ops also on SuperH.

--- emacs-orig/src/s/gnu-linux.h
+++ emacs/src/s/gnu-linux.h
@@ -258,7 +258,7 @@
 #if defined __i386__ || defined __sparc__ || defined __mc68000__ \
     || defined __alpha__ || defined __mips__ || defined __s390__ \
     || defined __arm__ || defined __powerpc__ || defined __amd64__ \
-    || defined __ia64__
+    || defined __ia64__ || defined __sh__
 #define GC_SETJMP_WORKS 1
 #define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS
 #ifdef __mc68000__