public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r12-7628] rs6000: Do not use rs6000_cpu for .machine ppc and ppc64 (PR104829)
@ 2022-03-12 16:03 Segher Boessenkool
  0 siblings, 0 replies; only message in thread
From: Segher Boessenkool @ 2022-03-12 16:03 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:80fcc4b6afee72443bef551064826b3b4b6785e6

commit r12-7628-g80fcc4b6afee72443bef551064826b3b4b6785e6
Author: Segher Boessenkool <segher@kernel.crashing.org>
Date:   Fri Mar 11 21:15:18 2022 +0000

    rs6000: Do not use rs6000_cpu for .machine ppc and ppc64 (PR104829)
    
    Fixes: 77eccbf39ed5
    
    rs6000.h has
      #define PROCESSOR_POWERPC   PROCESSOR_PPC604
      #define PROCESSOR_POWERPC64 PROCESSOR_RS64A
    which means that if you use things like  -mcpu=powerpc -mvsx  it will no
    longer work after my latest .machine patch.  This causes GCC build errors
    in some cases, not a good idea (even if the errors are actually
    pre-existing: using -mvsx with a machine that does not have VSX cannot
    work properly).
    
    2022-03-11  Segher Boessenkool  <segher@kernel.crashing.org>
    
            PR target/104829
            * config/rs6000/rs6000.cc (rs6000_machine_from_flags): Don't output
            "ppc" and "ppc64" based on rs6000_cpu.

Diff:
---
 gcc/config/rs6000/rs6000.cc | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc
index 3afe78f5d04..283e8306ff7 100644
--- a/gcc/config/rs6000/rs6000.cc
+++ b/gcc/config/rs6000/rs6000.cc
@@ -5804,20 +5804,28 @@ rs6000_machine_from_flags (void)
   if (rs6000_cpu == PROCESSOR_MPCCORE)
     return "\"821\"";
 
+#if 0
+  /* This (and ppc64 below) are disabled here (for now at least) because
+     PROCESSOR_POWERPC, PROCESSOR_POWERPC64, and PROCESSOR_COMMON
+     are #define'd as some of these.  Untangling that is a job for later.  */
+
   /* 600 series and 700 series, "classic" */
   if (rs6000_cpu == PROCESSOR_PPC601 || rs6000_cpu == PROCESSOR_PPC603
       || rs6000_cpu == PROCESSOR_PPC604 || rs6000_cpu == PROCESSOR_PPC604e
-      || rs6000_cpu == PROCESSOR_PPC750 || rs6000_cpu == PROCESSOR_POWERPC)
+      || rs6000_cpu == PROCESSOR_PPC750)
     return "ppc";
+#endif
 
   /* Classic with AltiVec, "G4" */
   if (rs6000_cpu == PROCESSOR_PPC7400 || rs6000_cpu == PROCESSOR_PPC7450)
     return "\"7450\"";
 
+#if 0
   /* The older 64-bit CPUs */
   if (rs6000_cpu == PROCESSOR_PPC620 || rs6000_cpu == PROCESSOR_PPC630
-      || rs6000_cpu == PROCESSOR_RS64A || rs6000_cpu == PROCESSOR_POWERPC64)
+      || rs6000_cpu == PROCESSOR_RS64A)
     return "ppc64";
+#endif
 
   HOST_WIDE_INT flags = rs6000_isa_flags;


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-03-12 16:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-12 16:03 [gcc r12-7628] rs6000: Do not use rs6000_cpu for .machine ppc and ppc64 (PR104829) Segher Boessenkool

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).