]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
i386.md (prefetch): Do not assert mode of operand 0.
authorUros Bizjak <ubizjak@gmail.com>
Thu, 13 Sep 2012 13:49:39 +0000 (15:49 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Thu, 13 Sep 2012 13:49:39 +0000 (15:49 +0200)
* config/i386/i386.md (prefetch): Do not assert mode of operand 0.
(*prefetch_sse_<mode>): Do not set mode of address_operand predicate.
Rename to ...
(*prefetch_sse): ... this.
(*prefetch_3dnow_<mode>): Do not set mode of address_operand predicate.
Rename to ...
(*prefetch_3dnow): ... this.

From-SVN: r191256

gcc/ChangeLog
gcc/config/i386/i386.md

index b3ae7ec1348d82578403bf9090628442db7cc32f..2eb98539a08e315c6fb6a0c4ed1ba57448742eb9 100644 (file)
@@ -1,3 +1,13 @@
+2012-08-13  Uros Bizjak  <ubizjak@gmail.com>
+
+       * config/i386/i386.md (prefetch): Do not assert mode of operand 0.
+       (*prefetch_sse_<mode>): Do not set mode of address_operand predicate.
+       Rename to ...
+       (*prefetch_sse): ... this.
+       (*prefetch_3dnow_<mode>): Do not set mode of address_operand predicate.
+       Rename to ...
+       (*prefetch_3dnow): ... this.
+
 2012-09-13  Steven Bosscher  <steven@gcc.gnu.org>
 
        * ipa-pure-const.c (state_from_flags, local_pure_const): Use
index 05d22ddb3dc0cf0dc819105ebf0ef7ea83c2e3cc..5886478e3fff0fe6fa0ae2e18fec41ad759f333f 100644 (file)
   int locality = INTVAL (operands[2]);
 
   gcc_assert (rw == 0 || rw == 1);
-  gcc_assert (locality >= 0 && locality <= 3);
-  gcc_assert (GET_MODE (operands[0]) == Pmode
-             || GET_MODE (operands[0]) == VOIDmode);
+  gcc_assert (IN_RANGE (locality, 0, 3));
+
   if (TARGET_PRFCHW && rw)
     operands[2] = GEN_INT (3);
-
   /* Use 3dNOW prefetch in case we are asking for write prefetch not
      supported by SSE counterpart or the SSE prefetch is not available
      (K6 machines).  Otherwise use SSE prefetch as it allows specifying
     operands[1] = const0_rtx;
 })
 
-(define_insn "*prefetch_sse_<mode>"
-  [(prefetch (match_operand:P 0 "address_operand" "p")
+(define_insn "*prefetch_sse"
+  [(prefetch (match_operand 0 "address_operand" "p")
             (const_int 0)
             (match_operand:SI 1 "const_int_operand"))]
   "TARGET_PREFETCH_SSE"
   };
 
   int locality = INTVAL (operands[1]);
-  gcc_assert (locality >= 0 && locality <= 3);
+  gcc_assert (IN_RANGE (locality, 0, 3));
 
   return patterns[locality];
 }
        (symbol_ref "memory_address_length (operands[0])"))
    (set_attr "memory" "none")])
 
-(define_insn "*prefetch_3dnow_<mode>"
-  [(prefetch (match_operand:P 0 "address_operand" "p")
+(define_insn "*prefetch_3dnow"
+  [(prefetch (match_operand 0 "address_operand" "p")
             (match_operand:SI 1 "const_int_operand" "n")
             (const_int 3))]
   "TARGET_3DNOW || TARGET_PRFCHW"