diff mbox

fix target 58587, disable -mvsx-timode for now

Message ID 20131002231526.GA21977@ibm-tiger.the-meissners.org
State New
Headers show

Commit Message

Michael Meissner Oct. 2, 2013, 11:15 p.m. UTC
This patch disables -mvsx-timode from being set by default because of yet
another problem with it (PR target 58587, cannot bootstrap with ada and
--with-cpu=power7).  I will need to address this in my later stage of secondary
reload issues in order to support the ISA 2.07 128-bit integer arithmetic
instructions that are not implemented yet.

I have verified that this allows the compiler to be bootstrapped with the Ada
language enabled with default power7 code generation.  In addition, I have done
a normal bootstrap build and encountered no regressions in the patch.

Is this patch ok to install until the real solution is done?

2013-10-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

	PR target/58587
	* config/rs6000/rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Turn off
	setting -mvsx-timode by default until the underlying problem is
	fixed.
	(RS6000_CPU, power7 defaults): Likewise.

Comments

David Edelsohn Oct. 2, 2013, 11:55 p.m. UTC | #1
On Wed, Oct 2, 2013 at 7:15 PM, Michael Meissner
<meissner@linux.vnet.ibm.com> wrote:
> This patch disables -mvsx-timode from being set by default because of yet
> another problem with it (PR target 58587, cannot bootstrap with ada and
> --with-cpu=power7).  I will need to address this in my later stage of secondary
> reload issues in order to support the ISA 2.07 128-bit integer arithmetic
> instructions that are not implemented yet.
>
> I have verified that this allows the compiler to be bootstrapped with the Ada
> language enabled with default power7 code generation.  In addition, I have done
> a normal bootstrap build and encountered no regressions in the patch.
>
> Is this patch ok to install until the real solution is done?
>
> 2013-10-02  Michael Meissner  <meissner@linux.vnet.ibm.com>
>
>         PR target/58587
>         * config/rs6000/rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Turn off
>         setting -mvsx-timode by default until the underlying problem is
>         fixed.
>         (RS6000_CPU, power7 defaults): Likewise.

Okay.

Thanks, David
diff mbox

Patch

Index: gcc/config/rs6000/rs6000-cpus.def
===================================================================
--- gcc/config/rs6000/rs6000-cpus.def	(revision 203034)
+++ gcc/config/rs6000/rs6000-cpus.def	(working copy)
@@ -38,12 +38,13 @@ 
 
   /* For ISA 2.06, don't add ISEL, since in general it isn't a win, but
      altivec is a win so enable it.  */
+  /* OPTION_MASK_VSX_TIMODE should be set, but disable it for now until
+     PR 58587 is fixed.  */
 #define ISA_2_6_MASKS_EMBEDDED	(ISA_2_5_MASKS_EMBEDDED | OPTION_MASK_POPCNTD)
 #define ISA_2_6_MASKS_SERVER	(ISA_2_5_MASKS_SERVER			\
 				 | OPTION_MASK_POPCNTD			\
 				 | OPTION_MASK_ALTIVEC			\
-				 | OPTION_MASK_VSX			\
-				 | OPTION_MASK_VSX_TIMODE)
+				 | OPTION_MASK_VSX)
 
 /* For now, don't provide an embedded version of ISA 2.07.  */
 #define ISA_2_7_MASKS_SERVER	(ISA_2_6_MASKS_SERVER			\
@@ -182,7 +183,7 @@  RS6000_CPU ("power6x", PROCESSOR_POWER6,
 RS6000_CPU ("power7", PROCESSOR_POWER7,   /* Don't add MASK_ISEL by default */
 	    POWERPC_7400_MASK | MASK_POWERPC64 | MASK_PPC_GPOPT | MASK_MFCRF
 	    | MASK_POPCNTB | MASK_FPRND | MASK_CMPB | MASK_DFP | MASK_POPCNTD
-	    | MASK_VSX | MASK_RECIP_PRECISION | MASK_VSX_TIMODE)
+	    | MASK_VSX | MASK_RECIP_PRECISION)
 RS6000_CPU ("power8", PROCESSOR_POWER8, MASK_POWERPC64 | ISA_2_7_MASKS_SERVER)
 RS6000_CPU ("powerpc", PROCESSOR_POWERPC, 0)
 RS6000_CPU ("powerpc64", PROCESSOR_POWERPC64, MASK_PPC_GFXOPT | MASK_POWERPC64)