2017-09-04  Uros Bizjak  <ubiz...@gmail.com>

    PR target/82098
    * config/i386/i386.md (*<btsc><mode>_mask): Add
    TARGET_USE_BT to insn constraint.
    (*btr<mode>_mask): Ditto.

Bootstrapped and regression tested on x86_64-linux-gnu {,-m32}.

Committed to mainline SVN.

Uros.
Index: config/i386/i386.md
===================================================================
--- config/i386/i386.md (revision 251662)
+++ config/i386/i386.md (working copy)
@@ -11033,8 +11033,9 @@
                (match_operand:SI 2 "const_int_operand")) 0))
          (match_operand:SWI48 3 "register_operand")))
    (clobber (reg:CC FLAGS_REG))]
-  "(INTVAL (operands[2]) & (GET_MODE_BITSIZE (<MODE>mode)-1))
-   == GET_MODE_BITSIZE (<MODE>mode)-1
+  "TARGET_USE_BT
+   && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (<MODE>mode)-1))
+      == GET_MODE_BITSIZE (<MODE>mode)-1
    && can_create_pseudo_p ()"
   "#"
   "&& 1"
@@ -11073,8 +11074,9 @@
                (match_operand:SI 2 "const_int_operand")) 0))
          (match_operand:SWI48 3 "register_operand")))
    (clobber (reg:CC FLAGS_REG))]
-  "(INTVAL (operands[2]) & (GET_MODE_BITSIZE (<MODE>mode)-1))
-   == GET_MODE_BITSIZE (<MODE>mode)-1
+  "TARGET_USE_BT
+   && (INTVAL (operands[2]) & (GET_MODE_BITSIZE (<MODE>mode)-1))
+      == GET_MODE_BITSIZE (<MODE>mode)-1
    && can_create_pseudo_p ()"
   "#"
   "&& 1"

Reply via email to