i386.md (*floatuns<SWI48:mode><MODEF:mode>2_avx512): New insn pattern.
authorUros Bizjak <ubizjak@gmail.com>
Wed, 23 May 2018 15:13:31 +0000 (17:13 +0200)
committerUros Bizjak <uros@gcc.gnu.org>
Wed, 23 May 2018 15:13:31 +0000 (17:13 +0200)
commit4b3f49649a76afc3ed1b75c7e68d641377e22ae1
tree18246a1811de5a29d2a0ebdca6b8d7d55dc2c730
parent3f13154553f8546ac3b2154440bca0cf556d57a7
i386.md (*floatuns<SWI48:mode><MODEF:mode>2_avx512): New insn pattern.

* config/i386/i386.md (*floatuns<SWI48:mode><MODEF:mode>2_avx512):
New insn pattern.
(floatunssi<mode>2): Also enable for AVX512F and TARGET_SSE_MATH.
Rewrite expander pattern.  Emit gen_floatunssi<mode>2_i387_with_xmm
for non-SSE modes.
(floatunsdisf2): Rewrite expander pattern.  Hanlde TARGET_AVX512F.
(floatunsdidf2): Ditto.

* config/i386/i386.md (fixuns_trunc<mode>di2): New insn pattern.
(fixuns_trunc<mode>si2_avx512f): Ditto.
(*fixuns_trunc<mode>si2_avx512f_zext): Ditto.
(fixuns_trunc<mode>si2): Also enable for AVX512F and TARGET_SSE_MATH.
Emit fixuns_trunc<mode>si2_avx512f for AVX512F targets.

testsuite/ChangeLog:

* gcc.target/i386/cvt-2.c: New test.

* gcc.target/i386/cvt-3.c: New test.

From-SVN: r260614
gcc/ChangeLog
gcc/config/i386/i386.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/cvt-2.c [new file with mode: 0644]
gcc/testsuite/gcc.target/i386/cvt-3.c [new file with mode: 0644]