From fb73bfdb67789f10378ed855b0da7f85376e4b6f Mon Sep 17 00:00:00 2001 From: Kewen Lin Date: Tue, 20 Dec 2022 21:06:15 -0600 Subject: [PATCH] rs6000: Fix the wrong location of OPTION_MASK_P10_FUSION setting hunk The hunk for setting flag OPTION_MASK_P10_FUSION locates wrongly between the if and else if block for OPTION_MASK_MMA. This is to fix this oversight accordingly. gcc/ChangeLog: * config/rs6000/rs6000.cc (rs6000_option_override_internal): Fix the location for OPTION_MASK_P10_FUSION flag setting. --- gcc/config/rs6000/rs6000.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gcc/config/rs6000/rs6000.cc b/gcc/config/rs6000/rs6000.cc index d362668ba13c..16ca45617b6e 100644 --- a/gcc/config/rs6000/rs6000.cc +++ b/gcc/config/rs6000/rs6000.cc @@ -4369,10 +4369,6 @@ rs6000_option_override_internal (bool global_init_p) if (TARGET_POWER10 && (rs6000_isa_flags_explicit & OPTION_MASK_MMA) == 0) rs6000_isa_flags |= OPTION_MASK_MMA; - if (TARGET_POWER10 - && (rs6000_isa_flags_explicit & OPTION_MASK_P10_FUSION) == 0) - rs6000_isa_flags |= OPTION_MASK_P10_FUSION; - /* Turn off vector pair/mma options on non-power10 systems. */ else if (!TARGET_POWER10 && TARGET_MMA) { @@ -4382,6 +4378,10 @@ rs6000_option_override_internal (bool global_init_p) rs6000_isa_flags &= ~OPTION_MASK_MMA; } + if (TARGET_POWER10 + && (rs6000_isa_flags_explicit & OPTION_MASK_P10_FUSION) == 0) + rs6000_isa_flags |= OPTION_MASK_P10_FUSION; + /* MMA requires SIMD support as ISA 3.1 claims and our implementation such as "*movoo" uses vector pair access which use VSX registers. So make MMA require VSX support here. */ -- 2.47.2