From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1921) id 43E1F3857B8B; Mon, 20 Jun 2022 20:25:37 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 43E1F3857B8B MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" From: Sebastian Huber To: gcc-cvs@gcc.gnu.org Subject: [gcc r10-10859] rs6000: Do not use rs6000_cpu for .machine ppc and ppc64 (PR104829) X-Act-Checkin: gcc X-Git-Author: Segher Boessenkool X-Git-Refname: refs/heads/releases/gcc-10 X-Git-Oldrev: 6142d65f4f528067f31e86bb97c07a661f2d66e7 X-Git-Newrev: 58465d673bb21fc234f642166ec0cf9e621787c3 Message-Id: <20220620202537.43E1F3857B8B@sourceware.org> Date: Mon, 20 Jun 2022 20:25:37 +0000 (GMT) X-BeenThere: gcc-cvs@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jun 2022 20:25:37 -0000 https://gcc.gnu.org/g:58465d673bb21fc234f642166ec0cf9e621787c3 commit r10-10859-g58465d673bb21fc234f642166ec0cf9e621787c3 Author: Segher Boessenkool 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 PR target/104829 * config/rs6000/rs6000.c (rs6000_machine_from_flags): Don't output "ppc" and "ppc64" based on rs6000_cpu. (cherry picked from commit 80fcc4b6afee72443bef551064826b3b4b6785e6) Diff: --- gcc/config/rs6000/rs6000.c | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index 0b00799bffd..24696edfb8c 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -5587,20 +5587,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;