Disable code added in GCC 4.9.3 which passes ".machine ppc" to the assembler;

this breaks builds when -maltivec is used, including Mozilla ports.

Borrowed from a commit to the Amiga development tools project,
b24ae06571

ok landry@ mpi@ naddy@
This commit is contained in:
sthen 2015-08-06 18:38:34 +00:00
parent 8030557cd1
commit f01f130905
2 changed files with 29 additions and 1 deletions

View File

@ -1,4 +1,4 @@
# $OpenBSD: Makefile,v 1.16 2015/07/19 21:22:49 pascal Exp $
# $OpenBSD: Makefile,v 1.17 2015/08/06 18:38:34 sthen Exp $
BROKEN-arm = needs binutils-2.17
@ -6,6 +6,7 @@ ONLY_FOR_ARCHS = amd64 arm hppa i386 powerpc sparc sparc64
DPB_PROPERTIES = parallel
V = 4.9.3
REVISION = 0
FULL_VERSION = $V
FULL_PKGVERSION = $V

View File

@ -0,0 +1,27 @@
$OpenBSD: patch-gcc_config_rs6000_rs6000_c,v 1.1 2015/08/06 18:38:34 sthen Exp $
Disable code which passes ".machine ppc" to the assembler as it breaks
use of some CPU features. Notably breaks -maltivec which breaks build of
Mozilla ports including xulrunner.
Borrowed from https://github.com/sba1/adtools/commit/b24ae065714a2390d7718d2c348fe5cfa40c2b48
--- gcc/config/rs6000/rs6000.c.orig Wed Aug 5 20:54:32 2015
+++ gcc/config/rs6000/rs6000.c Wed Aug 5 20:55:36 2015
@@ -4983,6 +4983,8 @@ rs6000_file_start (void)
if (rs6000_default_cpu == 0 || rs6000_default_cpu[0] == '\0'
|| !global_options_set.x_rs6000_cpu_index)
{
+ /* Temporarily disabled as it overrides e.g., -mcpu=440 and -maltivec */
+#if 0
fputs ("\t.machine ", asm_out_file);
if ((rs6000_isa_flags & OPTION_MASK_DIRECT_MOVE) != 0)
fputs ("power8\n", asm_out_file);
@@ -4998,6 +5000,7 @@ rs6000_file_start (void)
fputs ("ppc64\n", asm_out_file);
else
fputs ("ppc\n", asm_out_file);
+#endif
}
#endif
}