avx512erintrin.h (_mm_rcp28_round_sd): Swap operands.
authorIlya Tocar <ilya.tocar@intel.com>
Thu, 20 Feb 2014 06:26:38 +0000 (06:26 +0000)
committerKirill Yukhin <kyukhin@gcc.gnu.org>
Thu, 20 Feb 2014 06:26:38 +0000 (06:26 +0000)
commitdf62b4af2e7f921ee6adb2a70f62f6c3846139d0
treea5db3a8897ee4547063dd5e963c11dbe4c4b9f1d
parenta13cfd3e9bca793f3c6efd75eb10b654c3ebd41f
avx512erintrin.h (_mm_rcp28_round_sd): Swap operands.

gcc/
* config/i386/avx512erintrin.h (_mm_rcp28_round_sd): Swap operands.
(_mm_rcp28_round_ss): Ditto.
(_mm_rsqrt28_round_sd): Ditto.
(_mm_rsqrt28_round_ss): Ditto.
* config/i386/avx512erintrin.h (_mm_rcp14_round_sd): Ditto.
(_mm_rcp14_round_ss): Ditto.
(_mm_rsqrt14_round_sd): Ditto.
(_mm_rsqrt14_round_ss): Ditto.
* config/i386/sse.md (rsqrt14<mode>): Put nonimmediate operand as
the first input operand, get rid of match_dup.
(avx512er_exp2<mode><mask_name><round_saeonly_name>): Set type
attribute to sse.
(<mask_codefor>avx512er_rcp28<mode><mask_name><round_saeonly_name>):
Ditto.
(avx512er_vmrcp28<mode><round_saeonly_name>): Put nonimmediate
operand as the first input operand, set type attribute.
(<mask_codefor>avx512er_rsqrt28<mode><mask_name><round_saeonly_name>):
Set type attribute.
(avx512er_vmrsqrt28<mode><round_saeonly_name>): Put nonimmediate
operand as the first input operand, set type attribute.

testsuite/gcc/
* gcc.target/i386/avx512er-vrcp28sd-2.c: Distinguish src1 and src2.
* gcc.target/i386/avx512er-vrcp28ss-2.c: Call correct intrinsic.
* gcc.target/i386/avx512er-vrsqrt28sd-2.c: Distinguish src1 and src2.
* gcc.target/i386/avx512er-vrsqrt28ss-2.c: Ditto.
* gcc.target/i386/avx512f-vrcp14sd-2.c: Fix reference calculation.
* gcc.target/i386/avx512f-vrcp14ss-2.c: Fix reference calculation.

Co-Authored-By: Kirill Yukhin <kirill.yukhin@intel.com>
From-SVN: r207932
gcc/ChangeLog
gcc/config/i386/avx512erintrin.h
gcc/config/i386/avx512fintrin.h
gcc/config/i386/sse.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/avx512er-vrcp28sd-2.c
gcc/testsuite/gcc.target/i386/avx512er-vrcp28ss-2.c
gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28sd-2.c
gcc/testsuite/gcc.target/i386/avx512er-vrsqrt28ss-2.c
gcc/testsuite/gcc.target/i386/avx512f-vrcp14sd-2.c
gcc/testsuite/gcc.target/i386/avx512f-vrcp14ss-2.c