This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch] fix bootstrap on ppclinux 32-bit (and 64-bit?)
- From: Andreas Tobler <toa at pop dot agri dot ch>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>, Stan Shebs <shebs at apple dot com>
- Cc: Segher Boessenkool <segher at kernel dot crashing dot org>
- Date: Tue, 17 Aug 2004 13:22:48 +0200
- Subject: [patch] fix bootstrap on ppclinux 32-bit (and 64-bit?)
Hi all,
the introduction of 64-bit support for darwin broke bootstrap on ppc32
linux. The reason is this clause from darwin.md.
#if TARGET_MACHO
return output_call(insn, operands, 1, 3);
#endif
Now since darwin.md is included in rs6000.md it has to be safe for the
other targets too.
The two places places we have these #if's are darwin only calls, so we
can safely abort on other targets.
The appended patch fixes this.
Bootstrapped on darwin-7.5.0 and ppclinux 32-bit.
Ok for main?
Andreas
2004-08-17 Andreas Tobler <a.tobler@schweiz.ch>
* config/rs6000/darwin.md (*call_nonlocal_darwin64): Add #else clause
for non Darwin targets.
(*call_value_nonlocal_darwin64): Likewise.
Index: config/rs6000/darwin.md
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/rs6000/darwin.md,v
retrieving revision 1.2
diff -u -r1.2 darwin.md
--- config/rs6000/darwin.md 16 Aug 2004 18:57:25 -0000 1.2
+++ config/rs6000/darwin.md 17 Aug 2004 10:58:12 -0000
@@ -230,6 +230,8 @@
{
#if TARGET_MACHO
return output_call(insn, operands, 0, 2);
+#else
+ abort();
#endif
}
[(set_attr "type" "branch,branch")
@@ -259,7 +261,9 @@
{
#if TARGET_MACHO
return output_call(insn, operands, 1, 3);
-#endif
+#else
+ abort();
+#endif
}
[(set_attr "type" "branch,branch")
(set_attr "length" "4,8")])