[PATCH] Adjust some patterns wrt :c

Richard Biener rguenther@suse.de
Mon Oct 26 13:29:00 GMT 2015


This removes the genmatch warnings.

Bootstrapped / tested on x86_64-unknown-linux-gnu, applied.

Richard.

2015-10-26  Richard Biener  <rguenther@suse.de>

	* match.pd ((A & ~B) - (A & B) -> (A ^ B) - B): Add missing :c.
	( (X & ~Y) | (~X & Y) -> X ^ Y): Remove redundant :c.

Index: gcc/match.pd
===================================================================
--- gcc/match.pd	(revision 229307)
+++ gcc/match.pd	(working copy)
@@ -435,7 +435,7 @@ (define_operator_list RINT BUILT_IN_RINT
 
 /* Fold (A & ~B) - (A & B) into (A ^ B) - B.  */
 (simplify
- (minus (bit_and:cs @0 (bit_not @1)) (bit_and:s @0 @1))
+ (minus (bit_and:cs @0 (bit_not @1)) (bit_and:cs @0 @1))
   (minus (bit_xor @0 @1) @1))
 (simplify
  (minus (bit_and:s @0 INTEGER_CST@2) (bit_and:s @0 INTEGER_CST@1))
@@ -449,7 +449,7 @@ (define_operator_list RINT BUILT_IN_RINT
 
 /* Simplify (X & ~Y) | (~X & Y) -> X ^ Y.  */
 (simplify
- (bit_ior:c (bit_and:c @0 (bit_not @1)) (bit_and:c (bit_not @0) @1))
+ (bit_ior (bit_and:c @0 (bit_not @1)) (bit_and:c (bit_not @0) @1))
   (bit_xor @0 @1))
 (simplify
  (bit_ior:c (bit_and @0 INTEGER_CST@2) (bit_and (bit_not @0) INTEGER_CST@1))



More information about the Gcc-patches mailing list