diff mbox

PATCH [patch 1 of 7], rs6000, add support for scalar floating point in Altivec registers

Message ID 20141112005342.GA3720@ibm-tiger.the-meissners.org
State New
Headers show

Commit Message

Michael Meissner Nov. 12, 2014, 12:53 a.m. UTC
At one stage in working on the patches, I was editing the easy_fp_constant
predicate, and I noticed there was a test for the constant 0.0 at the top of
the function, as well as redundant tests in SFmode/DFmode.  I deleted these
redundant tests.  Is the patch acceptable to check in once the PowerPC
bootstraps again:

2014-11-11  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* config/rs6000/predicates.md (easy_fp_constant): Delete redunant
	tests for 0.0.

Comments

David Edelsohn Nov. 13, 2014, 2:26 a.m. UTC | #1
On Tue, Nov 11, 2014 at 7:53 PM, Michael Meissner
<meissner@linux.vnet.ibm.com> wrote:
> At one stage in working on the patches, I was editing the easy_fp_constant
> predicate, and I noticed there was a test for the constant 0.0 at the top of
> the function, as well as redundant tests in SFmode/DFmode.  I deleted these
> redundant tests.  Is the patch acceptable to check in once the PowerPC
> bootstraps again:
>
> 2014-11-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
>
>         * config/rs6000/predicates.md (easy_fp_constant): Delete redunant
>         tests for 0.0.

This is okay.

Thanks, David
diff mbox

Patch

Index: gcc/config/rs6000/predicates.md
===================================================================
--- gcc/config/rs6000/predicates.md	(revision 217369)
+++ gcc/config/rs6000/predicates.md	(working copy)
@@ -479,10 +479,6 @@  (define_predicate "easy_fp_constant"
 	      && num_insns_constant_wide ((HOST_WIDE_INT) k[3]) == 1);
 
     case DFmode:
-      /* The constant 0.f is easy under VSX.  */
-      if (op == CONST0_RTX (DFmode) && VECTOR_UNIT_VSX_P (DFmode))
-	return 1;
-
       /* Force constants to memory before reload to utilize
 	 compress_float_constant.
 	 Avoid this when flag_unsafe_math_optimizations is enabled
@@ -500,10 +496,6 @@  (define_predicate "easy_fp_constant"
 	      && num_insns_constant_wide ((HOST_WIDE_INT) k[1]) == 1);
 
     case SFmode:
-      /* The constant 0.f is easy.  */
-      if (op == CONST0_RTX (SFmode))
-	return 1;
-
       /* Force constants to memory before reload to utilize
 	 compress_float_constant.
 	 Avoid this when flag_unsafe_math_optimizations is enabled