Hi, This patch adds missing intrinsics for _mm_mask[z]_scalef_round_[sd,ss].
14.11.2017 Olga Makhotina <olga.makhot...@intel.com> gcc/ * config/i386/avx512fintrin.h (_mm_mask_scalef_round_sd, _mm_maskz_scalef_round_sd, _mm_mask_scalef_round_ss, _mm_maskz_scalef_round_ss): New intrinsics. (__builtin_ia32_scalefsd_round, __builtin_ia32_scalefss_round): Fix. * config/i386/i386-builtin.def (__builtin_ia32_scalefsd_round, __builtin_ia32_scalefss_round): Remove. (__builtin_ia32_scalefsd_mask_round, __builtin_ia32_scalefss_mask_round): New intrinsics. * config/i386/sse.md (vmscalef<mode><round_name>): Renamed to ... (vmscalef<mode><mask_scalar_name><round_scalar_name>): ... this. ((match_operand:VF_128 2 "<round_nimm_predicate>" "<round_constraint>")): Changed to ... ((match_operand:VF_128 2 "<round_scalar_nimm_predicate>" "<round_scalar_constraint>")): ... this. ("vscalef<ssescalarmodesuffix>\t{<round_op3>%2, %1, %0| %0, %1, %2<round_op3>}"): Changed to ... ("vscalef<ssescalarmodesuffix>\t{<round_scalar_mask_op3>%2, %1, %0<mask_scalar_operand3>|%0<mask_scalar_operand3>, %1, %2<round_scalar_mask_op3>}"): ... this. * config/i386/subst.md (round_scalar_nimm_predicate): New. 14.11.2017 Olga Makhotina <olga.makhot...@intel.com> gcc/testsuite/ * gcc.target/i386/avx512f-vscalefsd-1.c (_mm_mask_scalef_round_sd, _mm_maskz_scalef_round_sd): Test new intrinsics. * gcc.target/i386/avx512f-vscalefsd-2.c (_mm_scalef_round_sd, _mm_mask_scalef_round_sd, _mm_maskz_scalef_round_sd): Test new intrinsics. * gcc.target/i386/avx512f-vscalefss-1.c (_mm_mask_scalef_round_ss, _mm_maskz_scalef_round_ss): Test new intrinsics. * gcc.target/i386/avx512f-vscalefss-2.c (_mm_scalef_round_ss, _mm_mask_scalef_round_ss, _mm_maskz_scalef_round_ss): Test new intrinsics. * gcc.target/i386/avx-1.c (__builtin_ia32_scalefsd_round, __builtin_ia32_scalefss_round): Remove builtin. (__builtin_ia32_scalefsd_mask_round, __builtin_ia32_scalefss_mask_round): Test new builtin. * gcc.target/i386/sse-13.c: Ditto. * gcc.target/i386/sse-23.c: Ditto. Is it ok for trunk? Thanks, Olga