i386: Add V2SFmode NEG, ABS and logic insn patterns [PR95046]
authorUros Bizjak <ubizjak@gmail.com>
Tue, 12 May 2020 15:08:03 +0000 (17:08 +0200)
committerUros Bizjak <ubizjak@gmail.com>
Tue, 12 May 2020 15:08:03 +0000 (17:08 +0200)
gcc/ChangeLog:

PR target/95046
* config/i386/mmx.md (<code>v2sf2): New insn pattern.
(*mmx_<code>v2sf2): New insn_and_split pattern.
(*mmx_nabsv2sf2): Ditto.
(*mmx_andnotv2sf3): New insn pattern.
(*mmx_<code>v2sf3): Ditto.
* config/i386/i386.md (absneg_op): New code attribute.
* config/i386/i386.c (ix86_build_const_vector): Handle V2SFmode.
(ix86_build_signbit_mask): Ditto.

testsuite/ChangeLog:

PR target/95046
* gcc.target/i386/pr95046-2.c: New test.

gcc/ChangeLog

index 86fa5298110a016411d9fd78d9a5c3ae3a83950c..951596fe9b94b827d9d24a42b7a04bf7611ec8c2 100644 (file)
@@ -1,3 +1,15 @@
+2020-05-12  Uroš Bizjak  <ubizjak@gmail.com>
+
+       PR target/95046
+       * config/i386/mmx.md (<code>v2sf2): New insn pattern.
+       (*mmx_<code>v2sf2): New insn_and_split pattern.
+       (*mmx_nabsv2sf2): Ditto.
+       (*mmx_andnotv2sf3): New insn pattern.
+       (*mmx_<code>v2sf3): Ditto.
+       * config/i386/i386.md (absneg_op): New code attribute.
+       * config/i386/i386.c (ix86_build_const_vector): Handle V2SFmode.
+       (ix86_build_signbit_mask): Ditto.
+
 2020-05-12  Richard Biener  <rguenther@suse.de>
 
        * tree-ssa-live.c (remove_unused_locals): Remove dead debug