https://gcc.gnu.org/g:f2367fcb3377cf95869095514be99e7633aad3d2

commit r15-8696-gf2367fcb3377cf95869095514be99e7633aad3d2
Author: Haochen Jiang <haochen.ji...@intel.com>
Date:   Mon Mar 24 14:23:51 2025 +0800

    Revert "AVX10.2 ymm rounding: Support vmulp{s,d,h} and vrangep{s,d} intrins"
    
    This reverts commit 90cc5b0c4609a9fb3257d2cce7b7abc896c6faab.

Diff:
---
 gcc/config/i386/avx10_2roundingintrin.h            | 313 ---------------------
 gcc/config/i386/i386-builtin-types.def             |   2 -
 gcc/config/i386/i386-builtin.def                   |   5 -
 gcc/config/i386/i386-expand.cc                     |   2 -
 gcc/testsuite/gcc.target/i386/avx-1.c              |   5 -
 gcc/testsuite/gcc.target/i386/avx10_2-rounding-3.c |  43 ---
 gcc/testsuite/gcc.target/i386/sse-13.c             |   5 -
 gcc/testsuite/gcc.target/i386/sse-14.c             |  15 -
 gcc/testsuite/gcc.target/i386/sse-22.c             |  15 -
 gcc/testsuite/gcc.target/i386/sse-23.c             |   5 -
 10 files changed, 410 deletions(-)

diff --git a/gcc/config/i386/avx10_2roundingintrin.h 
b/gcc/config/i386/avx10_2roundingintrin.h
index f42bb4f0d0a0..f6551039fbba 100644
--- a/gcc/config/i386/avx10_2roundingintrin.h
+++ b/gcc/config/i386/avx10_2roundingintrin.h
@@ -3454,198 +3454,6 @@ _mm256_maskz_min_round_ps (__mmask8 __U, __m256 __A, 
__m256 __B,
                                                      (__mmask8) __U,
                                                      __R);
 }
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_round_pd (__m256d __A, __m256d __B, const int __R)
-{
-  return (__m256d) __builtin_ia32_mulpd256_mask_round ((__v4df) __A,
-                                                      (__v4df) __B,
-                                                      (__v4df)
-                                                      _mm256_undefined_pd (),
-                                                      (__mmask8) -1,
-                                                      __R);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_round_pd (__m256d __W, __mmask8 __U, __m256d __A,
-                         __m256d __B, const int __R)
-{
-  return (__m256d) __builtin_ia32_mulpd256_mask_round ((__v4df) __A,
-                                                      (__v4df) __B,
-                                                      (__v4df) __W,
-                                                      (__mmask8) __U,
-                                                      __R);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_round_pd (__mmask8 __U, __m256d __A, __m256d __B,
-                          const int __R)
-{
-  return (__m256d) __builtin_ia32_mulpd256_mask_round ((__v4df) __A,
-                                                      (__v4df) __B,
-                                                      (__v4df)
-                                                      _mm256_setzero_pd (),
-                                                      (__mmask8) __U,
-                                                      __R);
-}
-
-extern __inline __m256h
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_round_ph (__m256h __A, __m256h __B, const int __R)
-{
-  return (__m256h) __builtin_ia32_mulph256_mask_round ((__v16hf) __A,
-                                                      (__v16hf) __B,
-                                                      (__v16hf)
-                                                      _mm256_undefined_ph (),
-                                                      (__mmask16) -1,
-                                                      __R);
-}
-
-extern __inline __m256h
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_round_ph (__m256h __W, __mmask16 __U, __m256h __A,
-                         __m256h __B, const int __R)
-{
-  return (__m256h) __builtin_ia32_mulph256_mask_round ((__v16hf) __A,
-                                                      (__v16hf) __B,
-                                                      (__v16hf) __W,
-                                                      (__mmask16) __U,
-                                                      __R);
-}
-
-extern __inline __m256h
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_round_ph (__mmask16 __U, __m256h __A, __m256h __B,
-                          const int __R)
-{
-  return (__m256h) __builtin_ia32_mulph256_mask_round ((__v16hf) __A,
-                                                      (__v16hf) __B,
-                                                      (__v16hf)
-                                                      _mm256_setzero_ph (),
-                                                      (__mmask16) __U,
-                                                      __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mul_round_ps (__m256 __A, __m256 __B, const int __R)
-{
-  return (__m256) __builtin_ia32_mulps256_mask_round ((__v8sf) __A,
-                                                     (__v8sf) __B,
-                                                     (__v8sf)
-                                                     _mm256_undefined_ps (),
-                                                     (__mmask8) -1,
-                                                     __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_mul_round_ps (__m256 __W, __mmask8 __U, __m256 __A, __m256 __B,
-                         const int __R)
-{
-  return (__m256) __builtin_ia32_mulps256_mask_round ((__v8sf) __A,
-                                                     (__v8sf) __B,
-                                                     (__v8sf) __W,
-                                                     (__mmask8) __U,
-                                                     __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_mul_round_ps (__mmask8 __U, __m256 __A, __m256 __B,
-                          const int __R)
-{
-  return (__m256) __builtin_ia32_mulps256_mask_round ((__v8sf) __A,
-                                                     (__v8sf) __B,
-                                                     (__v8sf)
-                                                     _mm256_setzero_ps (),
-                                                     (__mmask8) __U,
-                                                     __R);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_range_round_pd (__m256d __A, __m256d __B, const int __C,
-                      const int __R)
-{
-  return (__m256d) __builtin_ia32_rangepd256_mask_round ((__v4df) __A,
-                                                        (__v4df) __B,
-                                                        __C,
-                                                        (__v4df)
-                                                        _mm256_setzero_pd (),
-                                                        (__mmask8) -1,
-                                                        __R);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_range_round_pd (__m256d __W, __mmask8 __U, __m256d __A,
-                           __m256d __B, const int __C, const int __R)
-{
-  return (__m256d) __builtin_ia32_rangepd256_mask_round ((__v4df) __A,
-                                                        (__v4df) __B,
-                                                        __C,
-                                                        (__v4df) __W,
-                                                        (__mmask8) __U,
-                                                        __R);
-}
-
-extern __inline __m256d
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_range_round_pd (__mmask8 __U, __m256d __A, __m256d __B,
-                            const int __C, const int __R)
-{
-  return (__m256d) __builtin_ia32_rangepd256_mask_round ((__v4df) __A,
-                                                        (__v4df) __B,
-                                                        __C,
-                                                        (__v4df)
-                                                        _mm256_setzero_pd (),
-                                                        (__mmask8) __U,
-                                                        __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_range_round_ps (__m256 __A, __m256 __B, const int __C, const int __R)
-{
-  return (__m256) __builtin_ia32_rangeps256_mask_round ((__v8sf) __A,
-                                                       (__v8sf) __B,
-                                                       __C,
-                                                       (__v8sf)
-                                                       _mm256_setzero_ps (),
-                                                       (__mmask8) -1,
-                                                       __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_mask_range_round_ps (__m256 __W, __mmask8 __U, __m256 __A,
-                           __m256 __B, const int __C, const int __R)
-{
-  return (__m256) __builtin_ia32_rangeps256_mask_round ((__v8sf) __A,
-                                                       (__v8sf) __B,
-                                                       __C,
-                                                       (__v8sf) __W,
-                                                       (__mmask8) __U,
-                                                       __R);
-}
-
-extern __inline __m256
-__attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_range_round_ps (__mmask8 __U, __m256 __A, __m256 __B,
-                            const int __C, const int __R)
-{
-  return (__m256) __builtin_ia32_rangeps256_mask_round ((__v8sf) __A,
-                                                       (__v8sf) __B,
-                                                       __C,
-                                                       (__v8sf)
-                                                       _mm256_setzero_ps (),
-                                                       (__mmask8) __U,
-                                                       __R);
-}
 #else
 #define _mm256_add_round_pd(A, B, R) \
   ((__m256d) __builtin_ia32_addpd256_mask_round ((__v4df) (A), \
@@ -5402,127 +5210,6 @@ _mm256_maskz_range_round_ps (__mmask8 __U, __m256 __A, 
__m256 __B,
                                                (_mm256_setzero_ps ()), \
                                                (__mmask8) (U), \
                                                (R)))
-
-#define _mm256_mul_round_pd(A, B, R) \
-  ((__m256d) __builtin_ia32_mulpd256_mask_round ((__v4df) (A), \
-                                                (__v4df) (B), \
-                                                (__v4df) \
-                                                (_mm256_undefined_pd ()), \
-                                                (__mmask8) (-1), \
-                                                (R)))
-
-#define _mm256_mask_mul_round_pd(W, U, A, B, R) \
-  ((__m256d) __builtin_ia32_mulpd256_mask_round ((__v4df) (A), \
-                                                (__v4df) (B), \
-                                                (__v4df) (W), \
-                                                (__mmask8) (U), \
-                                                (R)))
-
-#define _mm256_maskz_mul_round_pd(U, A, B, R) \
-  ((__m256d) __builtin_ia32_mulpd256_mask_round ((__v4df) (A), \
-                                                (__v4df) (B), \
-                                                (__v4df) \
-                                                (_mm256_setzero_pd ()), \
-                                                (__mmask8) (U), \
-                                                (R)))
-
-#define _mm256_mul_round_ph(A, B, R) \
-  ((__m256h) __builtin_ia32_mulph256_mask_round ((__v16hf) (A), \
-                                                (__v16hf) (B), \
-                                                (__v16hf) \
-                                                (_mm256_undefined_ph ()), \
-                                                (__mmask16) (-1), \
-                                                (R)))
-
-#define _mm256_mask_mul_round_ph(W, U, A, B, R) \
-  ((__m256h) __builtin_ia32_mulph256_mask_round ((__v16hf) (A), \
-                                                (__v16hf) (B), \
-                                                (__v16hf) (W), \
-                                                (__mmask16) (U), \
-                                                (R)))
-
-#define _mm256_maskz_mul_round_ph(U, A, B, R) \
-  ((__m256h) __builtin_ia32_mulph256_mask_round ((__v16hf) (A), \
-                                                (__v16hf) (B), \
-                                                (__v16hf) \
-                                                (_mm256_setzero_ph ()), \
-                                                (__mmask16) (U), \
-                                                (R)))
-
-#define _mm256_mul_round_ps(A, B, R) \
-  ((__m256) __builtin_ia32_mulps256_mask_round ((__v8sf) (A), \
-                                               (__v8sf) (B), \
-                                               (__v8sf) \
-                                               (_mm256_undefined_ps ()), \
-                                               (__mmask8) (-1), \
-                                               (R)))
-
-#define _mm256_mask_mul_round_ps(W, U, A, B, R) \
-  ((__m256) __builtin_ia32_mulps256_mask_round ((__v8sf) (A), \
-                                               (__v8sf) (B), \
-                                               (__v8sf) (W), \
-                                               (__mmask8) (U), \
-                                               (R)))
-
-#define _mm256_maskz_mul_round_ps(U, A, B, R) \
-  ((__m256) __builtin_ia32_mulps256_mask_round ((__v8sf) (A), \
-                                               (__v8sf) (B), \
-                                               (__v8sf) \
-                                               (_mm256_setzero_ps ()), \
-                                               (__mmask8) (U), \
-                                               (R)))
-
-#define _mm256_range_round_pd(A, B, C, R) \
-  ((__m256d) __builtin_ia32_rangepd256_mask_round ((__v4df) (A), \
-                                                  (__v4df) (B), \
-                                                  (C), \
-                                                  (__v4df) \
-                                                  (_mm256_setzero_pd ()), \
-                                                  (__mmask8) (-1), \
-                                                  (R)))
-
-#define _mm256_mask_range_round_pd(W, U, A, B, C, R) \
-  ((__m256d) __builtin_ia32_rangepd256_mask_round ((__v4df) (A), \
-                                                  (__v4df) (B), \
-                                                  (C), \
-                                                  (__v4df) (W), \
-                                                  (__mmask8) (U), \
-                                                  (R)))
-
-#define _mm256_maskz_range_round_pd(U, A, B, C, R) \
-  ((__m256d) __builtin_ia32_rangepd256_mask_round ((__v4df) (A), \
-                                                  (__v4df) (B), \
-                                                  (C), \
-                                                  (__v4df) \
-                                                  (_mm256_setzero_pd ()), \
-                                                  (__mmask8) (U), \
-                                                  (R)))
-
-#define _mm256_range_round_ps(A, B, C, R) \
-  ((__m256) __builtin_ia32_rangeps256_mask_round ((__v8sf) (A), \
-                                                 (__v8sf) (B), \
-                                                 (C), \
-                                                 (__v8sf) \
-                                                 (_mm256_setzero_ps ()), \
-                                                 (__mmask8) (-1), \
-                                                 (R)))
-
-#define _mm256_mask_range_round_ps(W, U, A, B, C, R) \
-  ((__m256) __builtin_ia32_rangeps256_mask_round ((__v8sf) (A), \
-                                                 (__v8sf) (B), \
-                                                 (C), \
-                                                 (__v8sf) (W), \
-                                                 (__mmask8) (U), \
-                                                 (R)))
-
-#define _mm256_maskz_range_round_ps(U, A, B, C, R) \
-  ((__m256) __builtin_ia32_rangeps256_mask_round ((__v8sf) (A), \
-                                                 (__v8sf) (B), \
-                                                 (C), \
-                                                 (__v8sf) \
-                                                 (_mm256_setzero_ps ()), \
-                                                 (__mmask8) (U), \
-                                                 (R)))
 #endif
 
 #define _mm256_cmul_round_pch(A, B, R) _mm256_fcmul_round_pch ((A), (B), (R))
diff --git a/gcc/config/i386/i386-builtin-types.def 
b/gcc/config/i386/i386-builtin-types.def
index cec9e4ad6caf..12cbb20f80e3 100644
--- a/gcc/config/i386/i386-builtin-types.def
+++ b/gcc/config/i386/i386-builtin-types.def
@@ -1452,8 +1452,6 @@ DEF_FUNCTION_TYPE (V8SF, V8SF, V8SF, UQI, INT)
 DEF_FUNCTION_TYPE (V4DF, V4DF, INT, V4DF, UQI, INT)
 DEF_FUNCTION_TYPE (V16HF, V16HF, INT, V16HF, UHI, INT)
 DEF_FUNCTION_TYPE (V8SF, V8SF, INT, V8SF, UQI, INT)
-DEF_FUNCTION_TYPE (V4DF, V4DF, V4DF, INT, V4DF, UQI, INT)
-DEF_FUNCTION_TYPE (V8SF, V8SF, V8SF, INT, V8SF, UQI, INT)
 DEF_FUNCTION_TYPE (V32HF, V16SF, V16SF, V32HF, USI, INT)
 DEF_FUNCTION_TYPE (V32HF, V16SF, V16SF, V32HF, USI)
 DEF_FUNCTION_TYPE (V16HF, V8SF, V8SF, V16HF, UHI)
diff --git a/gcc/config/i386/i386-builtin.def b/gcc/config/i386/i386-builtin.def
index 39f459d4ad33..374fa8feb634 100644
--- a/gcc/config/i386/i386-builtin.def
+++ b/gcc/config/i386/i386-builtin.def
@@ -3798,11 +3798,6 @@ BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, 
CODE_FOR_smaxv8sf3_mask_round, "__builti
 BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, CODE_FOR_sminv4df3_mask_round, 
"__builtin_ia32_minpd256_mask_round", IX86_BUILTIN_VMINPD256_MASK_ROUND, 
UNKNOWN, (int) V4DF_FTYPE_V4DF_V4DF_V4DF_UQI_INT)
 BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, CODE_FOR_sminv16hf3_mask_round, 
"__builtin_ia32_minph256_mask_round", IX86_BUILTIN_VMINPH256_MASK_ROUND, 
UNKNOWN, (int) V16HF_FTYPE_V16HF_V16HF_V16HF_UHI_INT)
 BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, CODE_FOR_sminv8sf3_mask_round, 
"__builtin_ia32_minps256_mask_round", IX86_BUILTIN_VMINPS256_MASK_ROUND, 
UNKNOWN, (int) V8SF_FTYPE_V8SF_V8SF_V8SF_UQI_INT)
-BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, CODE_FOR_mulv4df3_mask_round, 
"__builtin_ia32_mulpd256_mask_round", IX86_BUILTIN_VMULPD256_MASK_ROUND, 
UNKNOWN, (int) V4DF_FTYPE_V4DF_V4DF_V4DF_UQI_INT)
-BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, CODE_FOR_mulv16hf3_mask_round, 
"__builtin_ia32_mulph256_mask_round", IX86_BUILTIN_VMULPH256_MASK_ROUND, 
UNKNOWN, (int) V16HF_FTYPE_V16HF_V16HF_V16HF_UHI_INT)
-BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, CODE_FOR_mulv8sf3_mask_round, 
"__builtin_ia32_mulps256_mask_round", IX86_BUILTIN_VMULPS256_MASK_ROUND, 
UNKNOWN, (int) V8SF_FTYPE_V8SF_V8SF_V8SF_UQI_INT)
-BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, 
CODE_FOR_avx512dq_rangepv4df_mask_round, 
"__builtin_ia32_rangepd256_mask_round", IX86_BUILTIN_VRANGEPD256_MASK_ROUND, 
UNKNOWN, (int) V4DF_FTYPE_V4DF_V4DF_INT_V4DF_UQI_INT)
-BDESC (0, OPTION_MASK_ISA2_AVX10_2_256, 
CODE_FOR_avx512dq_rangepv8sf_mask_round, 
"__builtin_ia32_rangeps256_mask_round", IX86_BUILTIN_VRANGEPS256_MASK_ROUND, 
UNKNOWN, (int) V8SF_FTYPE_V8SF_V8SF_INT_V8SF_UQI_INT)
 BDESC (0, OPTION_MASK_ISA2_AVX10_2_512, 
CODE_FOR_avx10_2_cvt2ps2phx_v32hf_mask_round, 
"__builtin_ia32_vcvt2ps2phx512_mask_round", 
IX86_BUILTIN_VCVT2PS2PHX_V32HF_MASK_ROUND, UNKNOWN, (int) 
V32HF_FTYPE_V16SF_V16SF_V32HF_USI_INT)
 BDESC (0, OPTION_MASK_ISA2_AVX10_2_512, 
CODE_FOR_avx10_2_cvtph2ibsv32hf_mask_round, 
"__builtin_ia32_cvtph2ibs512_mask_round", IX86_BUILTIN_CVTPH2IBS512_MASK_ROUND, 
UNKNOWN, (int) V32HI_FTYPE_V32HF_V32HI_USI_INT)
 BDESC (0, OPTION_MASK_ISA2_AVX10_2_512, 
CODE_FOR_avx10_2_cvtph2iubsv32hf_mask_round, 
"__builtin_ia32_cvtph2iubs512_mask_round", 
IX86_BUILTIN_CVTPH2IUBS512_MASK_ROUND, UNKNOWN, (int) 
V32HI_FTYPE_V32HF_V32HI_USI_INT)
diff --git a/gcc/config/i386/i386-expand.cc b/gcc/config/i386/i386-expand.cc
index 8318d1e2679a..ed22c2ebf9dc 100644
--- a/gcc/config/i386/i386-expand.cc
+++ b/gcc/config/i386/i386-expand.cc
@@ -12839,8 +12839,6 @@ ix86_expand_round_builtin (const struct 
builtin_description *d,
       break;
     case V16SF_FTYPE_V16SF_V16SF_INT_V16SF_HI_INT:
     case V8DF_FTYPE_V8DF_V8DF_INT_V8DF_QI_INT:
-    case V8SF_FTYPE_V8SF_V8SF_INT_V8SF_UQI_INT:
-    case V4DF_FTYPE_V4DF_V4DF_INT_V4DF_UQI_INT:
     case V4SF_FTYPE_V4SF_V4SF_INT_V4SF_QI_INT:
     case V2DF_FTYPE_V2DF_V2DF_INT_V2DF_QI_INT:
     case V2DF_FTYPE_V2DF_V2DF_INT_V2DF_UQI_INT:
diff --git a/gcc/testsuite/gcc.target/i386/avx-1.c 
b/gcc/testsuite/gcc.target/i386/avx-1.c
index a7541162e15d..c6ba32b3608a 100644
--- a/gcc/testsuite/gcc.target/i386/avx-1.c
+++ b/gcc/testsuite/gcc.target/i386/avx-1.c
@@ -981,11 +981,6 @@
 #define __builtin_ia32_minpd256_mask_round(A, B, C, D, E) 
__builtin_ia32_minpd256_mask_round(A, B, C, D, 8)
 #define __builtin_ia32_minph256_mask_round(A, B, C, D, E) 
__builtin_ia32_minph256_mask_round(A, B, C, D, 8)
 #define __builtin_ia32_minps256_mask_round(A, B, C, D, E) 
__builtin_ia32_minps256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulpd256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulpd256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulph256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulph256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulps256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulps256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_rangeps256_mask_round(A, B, I, D, E, F) 
__builtin_ia32_rangeps256_mask_round(A, B, 1, D, E, 8)
-#define __builtin_ia32_rangepd256_mask_round(A, B, I, D, E, F) 
__builtin_ia32_rangepd256_mask_round(A, B, 1, D, E, 8)
 
 /* avx10_2-512mediaintrin.h */
 #define __builtin_ia32_mpsadbw512(A, B, C) __builtin_ia32_mpsadbw512 (A, B, 1)
diff --git a/gcc/testsuite/gcc.target/i386/avx10_2-rounding-3.c 
b/gcc/testsuite/gcc.target/i386/avx10_2-rounding-3.c
index bf5e77837bd0..2bd060411710 100644
--- a/gcc/testsuite/gcc.target/i386/avx10_2-rounding-3.c
+++ b/gcc/testsuite/gcc.target/i386/avx10_2-rounding-3.c
@@ -141,21 +141,6 @@
 /* { dg-final { scan-assembler-times "vminps\[ 
\\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)"  1  }  } */
 /* { dg-final { scan-assembler-times "vminps\[ 
\\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1  } 
 } */
 /* { dg-final { scan-assembler-times "vminps\[ 
\\t\]+\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ \\t\]+#)" 
1  }  } */
-/* { dg-final { scan-assembler-times "vmulpd\[ 
\\t\]+\[^\n\]*\{rn-sae\}\[^\{\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vmulpd\[ 
\\t\]+\[^\n\]*\{rd-sae\}\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 
 }  } */
-/* { dg-final { scan-assembler-times "vmulpd\[ 
\\t\]+\[^\n\]*\{rz-sae\}\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ 
\\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vmulph\[ 
\\t\]+\{rn-sae\}\[^\{\n\]*%ymm\[0-9\]+\[^\n\r]*%ymm\[0-9\]+\[^\n\r]*%ymm\[0-9\]+(?:\n|\[
 \\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vmulph\[ 
\\t\]+\{rn-sae\}\[^\{\n\]*%ymm\[0-9\]+\[^\n\r]*%ymm\[0-9\]+\[^\n\r]*%ymm\[0-9\]+\{%k\[0-9\]\}\[^\n\r]*(?:\n|\[
 \\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vmulph\[ 
\\t\]+\{rz-sae\}\[^\{\n\]*%ymm\[0-9\]+\[^\n\r]*%ymm\[0-9\]+\[^\n\r]*%ymm\[0-9\]+\{%k\[0-9\]\}\{z\}\[^\n\r]*(?:\n|\[
 \\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vmulps\[ 
\\t\]+\[^\n\]*\{rn-sae\}\[^\{\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vmulps\[ 
\\t\]+\[^\n\]*\{ru-sae\}\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ \\t\]+#)" 1 
 }  } */
-/* { dg-final { scan-assembler-times "vmulps\[ 
\\t\]+\[^\n\]*\{rz-sae\}\[^\{\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[ 
\\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vrangepd\[ 
\\t\]+\[^\$\n\]*\\$\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)"  1  
}  } */
-/* { dg-final { scan-assembler-times "vrangepd\[ 
\\t\]+\[^\$\n\]*\\$\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ 
\\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vrangepd\[ 
\\t\]+\[^\$\n\]*\\$\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
 \\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vrangeps\[ 
\\t\]+\[^\$\n\]*\\$\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+(?:\n|\[ \\t\]+#)"  1  
}  } */
-/* { dg-final { scan-assembler-times "vrangeps\[ 
\\t\]+\[^\$\n\]*\\$\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}(?:\n|\[ 
\\t\]+#)" 1  }  } */
-/* { dg-final { scan-assembler-times "vrangeps\[ 
\\t\]+\[^\$\n\]*\\$\[^\{\n\]*\{sae\}\[^\n\]*%ymm\[0-9\]+\{%k\[1-7\]\}\{z\}(?:\n|\[
 \\t\]+#)" 1  }  } */
 
 #include <immintrin.h>
 
@@ -446,31 +431,3 @@ avx10_2_test_19 (void)
   x = _mm256_mask_min_round_ps (x, m8, x, x, _MM_FROUND_NO_EXC);
   x = _mm256_maskz_min_round_ps (m8, x, x, _MM_FROUND_NO_EXC);
 }
-
-void extern
-avx10_2_test_20 (void)
-{
-  xd = _mm256_mul_round_pd (xd, xd, _MM_FROUND_TO_NEAREST_INT | 
_MM_FROUND_NO_EXC);
-  xd = _mm256_mask_mul_round_pd (xd, m8, xd, xd, _MM_FROUND_TO_NEG_INF | 
_MM_FROUND_NO_EXC);
-  xd = _mm256_maskz_mul_round_pd (m8, xd, xd, _MM_FROUND_TO_ZERO | 
_MM_FROUND_NO_EXC);
-
-  xh = _mm256_mul_round_ph (xh, xh, 8);
-  xh = _mm256_mask_mul_round_ph (xh, m16, xh, xh, 8);
-  xh = _mm256_maskz_mul_round_ph (m16, xh, xh, 11);
-
-  x = _mm256_mul_round_ps (x, x, _MM_FROUND_TO_NEAREST_INT | 
_MM_FROUND_NO_EXC);
-  x = _mm256_mask_mul_round_ps (x, m8, x, x, _MM_FROUND_TO_POS_INF | 
_MM_FROUND_NO_EXC);
-  x = _mm256_maskz_mul_round_ps (m8, x, x, _MM_FROUND_TO_ZERO | 
_MM_FROUND_NO_EXC);
-}
-
-void extern
-avx10_2_test_21 (void)
-{
-  xd = _mm256_range_round_pd (xd, xd, 15, _MM_FROUND_NO_EXC);
-  xd = _mm256_mask_range_round_pd (xd, m8, xd, xd, 15, _MM_FROUND_NO_EXC);
-  xd = _mm256_maskz_range_round_pd (m8, xd, xd, 15, _MM_FROUND_NO_EXC);
-
-  x = _mm256_range_round_ps (x, x, 15, _MM_FROUND_NO_EXC);
-  x = _mm256_mask_range_round_ps (x, m16, x, x, 15, _MM_FROUND_NO_EXC);
-  x = _mm256_maskz_range_round_ps (m16, x, x, 15, _MM_FROUND_NO_EXC);
-}
diff --git a/gcc/testsuite/gcc.target/i386/sse-13.c 
b/gcc/testsuite/gcc.target/i386/sse-13.c
index 28c247584b41..20e72464d463 100644
--- a/gcc/testsuite/gcc.target/i386/sse-13.c
+++ b/gcc/testsuite/gcc.target/i386/sse-13.c
@@ -988,11 +988,6 @@
 #define __builtin_ia32_minpd256_mask_round(A, B, C, D, E) 
__builtin_ia32_minpd256_mask_round(A, B, C, D, 8)
 #define __builtin_ia32_minph256_mask_round(A, B, C, D, E) 
__builtin_ia32_minph256_mask_round(A, B, C, D, 8)
 #define __builtin_ia32_minps256_mask_round(A, B, C, D, E) 
__builtin_ia32_minps256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulpd256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulpd256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulph256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulph256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulps256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulps256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_rangeps256_mask_round(A, B, C, D, E, F) 
__builtin_ia32_rangeps256_mask_round(A, B, 1, D, E, 8)
-#define __builtin_ia32_rangepd256_mask_round(A, B, C, D, E, F) 
__builtin_ia32_rangepd256_mask_round(A, B, 1, D, E, 8)
 
 /* avx10_2-512mediaintrin.h */
 #define __builtin_ia32_mpsadbw512(A, B, C) __builtin_ia32_mpsadbw512 (A, B, 1)
diff --git a/gcc/testsuite/gcc.target/i386/sse-14.c 
b/gcc/testsuite/gcc.target/i386/sse-14.c
index d75904a4d9a6..bb7404e32f25 100644
--- a/gcc/testsuite/gcc.target/i386/sse-14.c
+++ b/gcc/testsuite/gcc.target/i386/sse-14.c
@@ -1135,14 +1135,9 @@ test_2 (_mm256_max_round_ps, __m256, __m256, __m256, 8)
 test_2 (_mm256_min_round_pd, __m256d, __m256d, __m256d, 8)
 test_2 (_mm256_min_round_ph, __m256h, __m256h, __m256h, 8)
 test_2 (_mm256_min_round_ps, __m256, __m256, __m256, 8)
-test_2 (_mm256_mul_round_pd, __m256d, __m256d, __m256d, 9)
-test_2 (_mm256_mul_round_ph, __m256h, __m256h, __m256h, 9)
-test_2 (_mm256_mul_round_ps, __m256, __m256, __m256, 9)
 test_2x (_mm256_cmp_round_pd_mask, __mmask8, __m256d, __m256d, 1, 8)
 test_2x (_mm256_cmp_round_ph_mask, __mmask16, __m256h, __m256h, 1, 8)
 test_2x (_mm256_cmp_round_ps_mask, __mmask8, __m256, __m256, 1, 8)
-test_2x (_mm256_range_round_pd, __m256d, __m256d, __m256d, 15, 8)
-test_2x (_mm256_range_round_ps, __m256, __m256, __m256, 15, 8)
 test_2y (_mm256_maskz_getmant_round_pd, __m256d, __mmask8, __m256d, 1, 1, 8)
 test_2y (_mm256_maskz_getmant_round_ph, __m256h, __mmask16, __m256h, 1, 1, 8)
 test_2y (_mm256_maskz_getmant_round_ps, __m256, __mmask8, __m256, 1, 1, 8)
@@ -1230,16 +1225,11 @@ test_3 (_mm256_maskz_max_round_ps, __m256, __mmask8, 
__m256, __m256, 8)
 test_3 (_mm256_maskz_min_round_pd, __m256d, __mmask8, __m256d, __m256d, 8)
 test_3 (_mm256_maskz_min_round_ph, __m256h, __mmask16, __m256h, __m256h, 8)
 test_3 (_mm256_maskz_min_round_ps, __m256, __mmask8, __m256, __m256, 8)
-test_3 (_mm256_maskz_mul_round_pd, __m256d, __mmask8, __m256d, __m256d, 9)
-test_3 (_mm256_maskz_mul_round_ph, __m256h, __mmask16, __m256h, __m256h, 9)
-test_3 (_mm256_maskz_mul_round_ps, __m256, __mmask8, __m256, __m256, 9)
 test_3x (_mm256_mask_cmp_round_pd_mask, __mmask8, __mmask8, __m256d, __m256d, 
1, 8)
 test_3x (_mm256_mask_cmp_round_ph_mask, __mmask16, __mmask16, __m256h, 
__m256h, 1, 8)
 test_3x (_mm256_mask_cmp_round_ps_mask, __mmask8, __mmask8, __m256, __m256, 1, 
8)
 test_3x (_mm256_fixupimm_round_pd, __m256d, __m256d, __m256d, __m256i, 3, 8)
 test_3x (_mm256_fixupimm_round_ps, __m256, __m256, __m256, __m256i, 3, 8)
-test_3x (_mm256_maskz_range_round_pd, __m256d, __mmask8, __m256d, __m256d, 15, 
8)
-test_3x (_mm256_maskz_range_round_ps, __m256, __mmask8, __m256, __m256, 15, 8)
 test_3y (_mm256_mask_getmant_round_pd, __m256d, __m256d, __mmask8, __m256d, 1, 
1, 8)
 test_3y (_mm256_mask_getmant_round_ph, __m256h, __m256h, __mmask16, __m256h, 
1, 1, 8)
 test_3y (_mm256_mask_getmant_round_ps, __m256, __m256, __mmask8, __m256, 1, 1, 
8)
@@ -1317,15 +1307,10 @@ test_4 (_mm256_mask_max_round_ps, __m256, __m256, 
__mmask8, __m256, __m256, 8)
 test_4 (_mm256_mask_min_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256d, 8)
 test_4 (_mm256_mask_min_round_ph, __m256h, __m256h, __mmask16, __m256h, 
__m256h, 8)
 test_4 (_mm256_mask_min_round_ps, __m256, __m256, __mmask8, __m256, __m256, 8)
-test_4 (_mm256_mask_mul_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256d, 9)
-test_4 (_mm256_mask_mul_round_ph, __m256h, __m256h, __mmask16, __m256h, 
__m256h, 9)
-test_4 (_mm256_mask_mul_round_ps, __m256, __m256, __mmask8, __m256, __m256, 9)
 test_4x (_mm256_maskz_fixupimm_round_pd, __m256d, __mmask8, __m256d, __m256d, 
__m256i, 3, 8)
 test_4x (_mm256_maskz_fixupimm_round_ps, __m256, __mmask8, __m256, __m256, 
__m256i, 3, 8)
 test_4x (_mm256_mask_fixupimm_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256i, 3, 8)
 test_4x (_mm256_mask_fixupimm_round_ps, __m256, __m256, __mmask8, __m256, 
__m256i, 3, 8)
-test_4x (_mm256_mask_range_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256d, 15, 8)
-test_4x (_mm256_mask_range_round_ps, __m256, __m256, __mmask8, __m256, __m256, 
15, 8)
 
 /* avx10_2-512mediaintrin.h */
 test_2 (_mm512_mpsadbw_epu8, __m512i, __m512i, __m512i, 1)
diff --git a/gcc/testsuite/gcc.target/i386/sse-22.c 
b/gcc/testsuite/gcc.target/i386/sse-22.c
index 91d7038fc4f1..03103c931ff4 100644
--- a/gcc/testsuite/gcc.target/i386/sse-22.c
+++ b/gcc/testsuite/gcc.target/i386/sse-22.c
@@ -1178,14 +1178,9 @@ test_2 (_mm256_max_round_ps, __m256, __m256, __m256, 8)
 test_2 (_mm256_min_round_pd, __m256d, __m256d, __m256d, 8)
 test_2 (_mm256_min_round_ph, __m256h, __m256h, __m256h, 8)
 test_2 (_mm256_min_round_ps, __m256, __m256, __m256, 8)
-test_2 (_mm256_mul_round_pd, __m256d, __m256d, __m256d, 9)
-test_2 (_mm256_mul_round_ph, __m256h, __m256h, __m256h, 9)
-test_2 (_mm256_mul_round_ps, __m256, __m256, __m256, 9)
 test_2x (_mm256_cmp_round_pd_mask, __mmask8, __m256d, __m256d, 1, 8)
 test_2x (_mm256_cmp_round_ph_mask, __mmask16, __m256h, __m256h, 1, 8)
 test_2x (_mm256_cmp_round_ps_mask, __mmask8, __m256, __m256, 1, 8)
-test_2x (_mm256_range_round_pd, __m256d, __m256d, __m256d, 15, 8)
-test_2x (_mm256_range_round_ps, __m256, __m256, __m256, 15, 8)
 test_2y (_mm256_maskz_getmant_round_pd, __m256d, __mmask8, __m256d, 1, 1, 8)
 test_2y (_mm256_maskz_getmant_round_ph, __m256h, __mmask16, __m256h, 1, 1, 8)
 test_2y (_mm256_maskz_getmant_round_ps, __m256, __mmask8, __m256, 1, 1, 8)
@@ -1272,16 +1267,11 @@ test_3 (_mm256_maskz_max_round_ps, __m256, __mmask8, 
__m256, __m256, 8)
 test_3 (_mm256_maskz_min_round_pd, __m256d, __mmask8, __m256d, __m256d, 8)
 test_3 (_mm256_maskz_min_round_ph, __m256h, __mmask16, __m256h, __m256h, 8)
 test_3 (_mm256_maskz_min_round_ps, __m256, __mmask8, __m256, __m256, 8)
-test_3 (_mm256_maskz_mul_round_pd, __m256d, __mmask8, __m256d, __m256d, 9)
-test_3 (_mm256_maskz_mul_round_ph, __m256h, __mmask16, __m256h, __m256h, 9)
-test_3 (_mm256_maskz_mul_round_ps, __m256, __mmask8, __m256, __m256, 9)
 test_3x (_mm256_mask_cmp_round_pd_mask, __mmask8, __mmask8, __m256d, __m256d, 
1, 8)
 test_3x (_mm256_mask_cmp_round_ph_mask, __mmask16, __mmask16, __m256h, 
__m256h, 1, 8)
 test_3x (_mm256_mask_cmp_round_ps_mask, __mmask8, __mmask8, __m256, __m256, 1, 
8)
 test_3x (_mm256_fixupimm_round_pd, __m256d, __m256d, __m256d, __m256i, 3, 8)
 test_3x (_mm256_fixupimm_round_ps, __m256, __m256, __m256, __m256i, 3, 8)
-test_3x (_mm256_maskz_range_round_pd, __m256d, __mmask8, __m256d, __m256d, 15, 
8)
-test_3x (_mm256_maskz_range_round_ps, __m256, __mmask16, __m256, __m256, 15, 8)
 test_3y (_mm256_mask_getmant_round_pd, __m256d, __m256d, __mmask8, __m256d, 1, 
1, 8)
 test_3y (_mm256_mask_getmant_round_ph, __m256h, __m256h, __mmask16, __m256h, 
1, 1, 8)
 test_3y (_mm256_mask_getmant_round_ps, __m256, __m256, __mmask8, __m256, 1, 1, 
8)
@@ -1359,15 +1349,10 @@ test_4 (_mm256_mask_max_round_ps, __m256, __m256, 
__mmask8, __m256, __m256, 8)
 test_4 (_mm256_mask_min_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256d, 8)
 test_4 (_mm256_mask_min_round_ph, __m256h, __m256h, __mmask16, __m256h, 
__m256h, 8)
 test_4 (_mm256_mask_min_round_ps, __m256, __m256, __mmask8, __m256, __m256, 8)
-test_4 (_mm256_mask_mul_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256d, 9)
-test_4 (_mm256_mask_mul_round_ph, __m256h, __m256h, __mmask16, __m256h, 
__m256h, 9)
-test_4 (_mm256_mask_mul_round_ps, __m256, __m256, __mmask8, __m256, __m256, 9)
 test_4x (_mm256_maskz_fixupimm_round_pd, __m256d, __mmask8, __m256d, __m256d, 
__m256i, 3, 8)
 test_4x (_mm256_maskz_fixupimm_round_ps, __m256, __mmask8, __m256, __m256, 
__m256i, 3, 8)
 test_4x (_mm256_mask_fixupimm_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256i, 3, 8)
 test_4x (_mm256_mask_fixupimm_round_ps, __m256, __m256, __mmask8, __m256, 
__m256i, 3, 8)
-test_4x (_mm256_mask_range_round_pd, __m256d, __m256d, __mmask8, __m256d, 
__m256d, 15, 8)
-test_4x (_mm256_mask_range_round_ps, __m256, __m256, __mmask8, __m256, __m256, 
15, 8)
 
 /* avx10_2-512mediaintrin.h */
 test_2 (_mm512_mpsadbw_epu8, __m512i, __m512i, __m512i, 1)
diff --git a/gcc/testsuite/gcc.target/i386/sse-23.c 
b/gcc/testsuite/gcc.target/i386/sse-23.c
index 671bccbbfc93..72727c3a0ede 100644
--- a/gcc/testsuite/gcc.target/i386/sse-23.c
+++ b/gcc/testsuite/gcc.target/i386/sse-23.c
@@ -963,11 +963,6 @@
 #define __builtin_ia32_minpd256_mask_round(A, B, C, D, E) 
__builtin_ia32_minpd256_mask_round(A, B, C, D, 8)
 #define __builtin_ia32_minph256_mask_round(A, B, C, D, E) 
__builtin_ia32_minph256_mask_round(A, B, C, D, 8)
 #define __builtin_ia32_minps256_mask_round(A, B, C, D, E) 
__builtin_ia32_minps256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulpd256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulpd256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulph256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulph256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_mulps256_mask_round(A, B, C, D, E) 
__builtin_ia32_mulps256_mask_round(A, B, C, D, 8)
-#define __builtin_ia32_rangeps256_mask_round(A, B, C, D, E, F) 
__builtin_ia32_rangeps256_mask_round(A, B, 1, D, E, 8)
-#define __builtin_ia32_rangepd256_mask_round(A, B, C, D, E, F) 
__builtin_ia32_rangepd256_mask_round(A, B, 1, D, E, 8)
 
 /* avx10_2-512mediaintrin.h  */
 #define __builtin_ia32_mpsadbw512(A, B, C) __builtin_ia32_mpsadbw512 (A, B, 1)

Reply via email to