Remove redudant <iptr> when operand already has scalar mode.
authorHongtao Liu <hongtao.liu@intel.com>
Sun, 27 Oct 2019 04:39:31 +0000 (04:39 +0000)
committerHongtao Liu <liuhongt@gcc.gnu.org>
Sun, 27 Oct 2019 04:39:31 +0000 (04:39 +0000)
gcc/
* config/i386/sse.md (*<sse>_vm<plusminus_insn><mode>3,
<sse>_vm<multdiv_mnemonic><mode>3): Remove <iptr> since
operand is already scalar mode.
(iptr): Remove SF/DF.

From-SVN: r277481

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

index de55e1a..b61b07a 100644 (file)
@@ -1,3 +1,10 @@
+2019-10-27  Hongtao Liu  <hongtao.liu@intel.com>
+
+       * config/i386/sse.md (*<sse>_vm<plusminus_insn><mode>3,
+       <sse>_vm<multdiv_mnemonic><mode>3): Remove <iptr> since
+       operand already has scalar mode.
+       (iptr): Remove SF/DF.
+
 2019-10-26  Segher Boessenkool  <segher@kernel.crashing.org>
 
        PR target/91289
index 077c1d6..c8941a6 100644 (file)
    (V16QI "b") (V8HI "w") (V4SI "k") (V2DI "q")
    (V16SF "k") (V8DF "q")
    (V8SF "k") (V4DF "q")
-   (V4SF "k") (V2DF "q")
-   (SF "k") (DF "q")])
+   (V4SF "k") (V2DF "q")])
 
 ;; Mapping of vector modes to VPTERNLOG suffix
 (define_mode_attr ternlogsuffix
          (const_int 1)))]
   "TARGET_SSE"
   "@
-   <plusminus_mnemonic><ssescalarmodesuffix>\t{%2, %0|%0, %<iptr>2}
-   v<plusminus_mnemonic><ssescalarmodesuffix>\t{%2, %1, %0|%0, %1, %<iptr>2}"
+   <plusminus_mnemonic><ssescalarmodesuffix>\t{%2, %0|%0, %2}
+   v<plusminus_mnemonic><ssescalarmodesuffix>\t{%2, %1, %0|%0, %1, %2}"
   [(set_attr "isa" "noavx,avx")
    (set_attr "type" "sseadd")
    (set_attr "prefix" "orig,vex")
          (const_int 1)))]
   "TARGET_SSE"
   "@
-   <multdiv_mnemonic><ssescalarmodesuffix>\t{%2, %0|%0, %<iptr>2}
-   v<multdiv_mnemonic><ssescalarmodesuffix>\t{%2, %1, %0|%0, %1, %<iptr>2}"
+   <multdiv_mnemonic><ssescalarmodesuffix>\t{%2, %0|%0, %2}
+   v<multdiv_mnemonic><ssescalarmodesuffix>\t{%2, %1, %0|%0, %1, %2}"
   [(set_attr "isa" "noavx,avx")
    (set_attr "type" "sse<multdiv_mnemonic>")
    (set_attr "prefix" "orig,vex")