This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[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")])

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]