[ARM] Adjust clz, rbit and rev patterns for -mrestrict-it.
authorKyrylo Tkachov <kyrylo.tkachov@arm.com>
Tue, 5 Aug 2014 09:56:31 +0000 (09:56 +0000)
committerKyrylo Tkachov <ktkachov@gcc.gnu.org>
Tue, 5 Aug 2014 09:56:31 +0000 (09:56 +0000)
* config/arm/arm.md (clzsi2): Set predicable_short_it attr to no.
(rbitsi2): Likewise.
(*arm_rev): Set predicable and predicable_short_it attributes.

From-SVN: r213630

gcc/ChangeLog
gcc/config/arm/arm.md

index cec3fc6..b58e798 100644 (file)
@@ -1,5 +1,11 @@
 2014-08-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
 
+       * config/arm/arm.md (clzsi2): Set predicable_short_it attr to no.
+       (rbitsi2): Likewise.
+       (*arm_rev): Set predicable and predicable_short_it attributes.
+
+2014-08-05  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
+
        * convert.c (convert_to_integer): Guard transformation to lrint by
        -fno-math-errno.
 
index bd8ea8f..7a50993 100644 (file)
   "TARGET_32BIT && arm_arch5"
   "clz%?\\t%0, %1"
   [(set_attr "predicable" "yes")
+   (set_attr "predicable_short_it" "no")
    (set_attr "type" "clz")])
 
 (define_insn "rbitsi2"
   "TARGET_32BIT && arm_arch_thumb2"
   "rbit%?\\t%0, %1"
   [(set_attr "predicable" "yes")
+   (set_attr "predicable_short_it" "no")
    (set_attr "type" "clz")])
 
 (define_expand "ctzsi2"
    rev%?\t%0, %1"
   [(set_attr "arch" "t1,t2,32")
    (set_attr "length" "2,2,4")
+   (set_attr "predicable" "no,yes,yes")
+   (set_attr "predicable_short_it" "no")
    (set_attr "type" "rev")]
 )