https://gcc.gnu.org/g:89b4304b2746943213f9eef1d1cebb83b4996465

commit r15-10682-g89b4304b2746943213f9eef1d1cebb83b4996465
Author: Jakub Jelinek <[email protected]>
Date:   Wed Dec 17 09:12:42 2025 +0100

    i386: Obfuscate avx10_2bf16intrin.h inline function arguments [PR123155]
    
    Function arguments in installed headers need to be obfuscated (unlike
    object-like macro arguments), as e.g.
    is a valid program.  Most of the arguments are obfuscated, but some
    leaked in in the avx10_2bf16intrin.h header.
    gcc -S -O2 -O2 -Werror-implicit-function-declaration -march=novalake 
-msse4a -m3dnow -mavx -mavx2 -mfma4 -mxop -maes -mpclmul -mpopcnt -mabm -mlzcnt 
-mbmi -mbmi2 -mtbm -mlwp  -mfsgsbase -mrdrnd -mf16c -mfma -mrtm -mrdseed 
-mprfchw -madx -mfxsr -mxsaveopt -msha -mxsavec -mxsaves -mclflushopt 
-mavx512vp2intersect -mclwb -mmwaitx -mclzero -mpku -msgx -mrdpid -mgfni 
-mpconfig -mwbnoinvd -menqcmd -mserialize -mtsxldtrk -mamx-tile -mamx-int8 
-mamx-bf16 -mkl -mwidekl -mavxvnni -mavxifma -mavxvnniint8 -mavxneconvert 
-mcmpccxadd -mamx-fp16 -mprefetchi -mraoint -mamx-complex -mavxvnniint16 -msm3 
-msha512 -msm4 -mavx10.2 -mamx-avx512 -mamx-tf32 -mamx-fp8 -mmovrs -mamx-movrs 
-g -dA gcc/testsuite/gcc.target/i386/sse-13.c 
-fno-eliminate-unused-debug-{symbols,types} -o sse-13.s
    grep -A1 DW_TAG_formal_parameter sse-13.s | grep DW_AT_name | grep -v 'scii 
"__' | grep -v 'DW_AT_name: "__'
    shows arguments not prefixed with __ and the following patch fixes them.
    
    2025-12-17  Jakub Jelinek  <[email protected]>
    
            PR target/123155
            * config/i386/avx10_2-512bf16intrin.h (_mm512_roundscale_pbh,
            _mm512_mask_roundscale_pbh, _mm512_maskz_roundscale_pbh,
            _mm512_reduce_pbh, _mm512_mask_reduce_pbh, _mm512_maskz_reduce_pbh):
            Rename B argument to __B.
            * config/i386/avx10_2bf16intrin.h (_mm256_roundscale_pbh,
            _mm256_mask_roundscale_pbh, _mm256_maskz_roundscale_pbh,
            _mm_roundscale_pbh, _mm_mask_roundscale_pbh, 
_mm_maskz_roundscale_pbh,
            _mm256_reduce_pbh, _mm256_mask_reduce_pbh, _mm256_maskz_reduce_pbh,
            _mm_reduce_pbh, _mm_mask_reduce_pbh, _mm_maskz_reduce_pbh): 
Likewise.
    
    (cherry picked from commit 7a0fbbe9bf75345caaf1bdb73960aeaa2e60c23d)

Diff:
---
 gcc/config/i386/avx10_2-512bf16intrin.h | 24 ++++++++---------
 gcc/config/i386/avx10_2bf16intrin.h     | 48 ++++++++++++++++-----------------
 2 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/gcc/config/i386/avx10_2-512bf16intrin.h 
b/gcc/config/i386/avx10_2-512bf16intrin.h
index 21e4b369c9eb..37e1fb6cb11f 100644
--- a/gcc/config/i386/avx10_2-512bf16intrin.h
+++ b/gcc/config/i386/avx10_2-512bf16intrin.h
@@ -472,28 +472,28 @@ _mm512_maskz_getexp_pbh (__mmask32 __U, __m512bh __A)
 #ifdef __OPTIMIZE__
 extern __inline__ __m512bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_roundscale_pbh (__m512bh __A, int B)
+_mm512_roundscale_pbh (__m512bh __A, int __B)
 {
   return (__m512bh)
-    __builtin_ia32_rndscalebf16512_mask (__A, B,
+    __builtin_ia32_rndscalebf16512_mask (__A, __B,
                                         (__v32bf) _mm512_setzero_si512 (),
                                         (__mmask32) -1);
 }
 
 extern __inline__ __m512bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_mask_roundscale_pbh (__m512bh __W, __mmask32 __U, __m512bh __A, int B)
+_mm512_mask_roundscale_pbh (__m512bh __W, __mmask32 __U, __m512bh __A, int __B)
 {
   return (__m512bh)
-    __builtin_ia32_rndscalebf16512_mask (__A, B, __W,  __U);
+    __builtin_ia32_rndscalebf16512_mask (__A, __B, __W,  __U);
 }
 
 extern __inline__ __m512bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_roundscale_pbh (__mmask32 __U, __m512bh __A, int B)
+_mm512_maskz_roundscale_pbh (__mmask32 __U, __m512bh __A, int __B)
 {
   return (__m512bh)
-    __builtin_ia32_rndscalebf16512_mask (__A, B,
+    __builtin_ia32_rndscalebf16512_mask (__A, __B,
                                         (__v32bf) _mm512_setzero_si512 (),
                                         __U);
 }
@@ -518,10 +518,10 @@ _mm512_maskz_roundscale_pbh (__mmask32 __U, __m512bh __A, 
int B)
 #ifdef __OPTIMIZE__
 extern __inline__ __m512bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_reduce_pbh (__m512bh __A, int B)
+_mm512_reduce_pbh (__m512bh __A, int __B)
 {
   return (__m512bh)
-    __builtin_ia32_reducebf16512_mask (__A, B,
+    __builtin_ia32_reducebf16512_mask (__A, __B,
                                       (__v32bf) _mm512_setzero_si512 (),
                                       (__mmask32) -1);
 }
@@ -529,18 +529,18 @@ _mm512_reduce_pbh (__m512bh __A, int B)
 extern __inline__ __m512bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm512_mask_reduce_pbh (__m512bh __W, __mmask32 __U,
-                       __m512bh __A, int B)
+                       __m512bh __A, int __B)
 {
   return (__m512bh)
-    __builtin_ia32_reducebf16512_mask (__A, B, __W,  __U);
+    __builtin_ia32_reducebf16512_mask (__A, __B, __W,  __U);
 }
 
 extern __inline__ __m512bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm512_maskz_reduce_pbh (__mmask32 __U, __m512bh __A, int B)
+_mm512_maskz_reduce_pbh (__mmask32 __U, __m512bh __A, int __B)
 {
   return (__m512bh)
-    __builtin_ia32_reducebf16512_mask (__A, B,
+    __builtin_ia32_reducebf16512_mask (__A, __B,
                                          (__v32bf) _mm512_setzero_si512 (),
                                          __U);
 }
diff --git a/gcc/config/i386/avx10_2bf16intrin.h 
b/gcc/config/i386/avx10_2bf16intrin.h
index e6890fc2cfd6..057eb43a8c5e 100644
--- a/gcc/config/i386/avx10_2bf16intrin.h
+++ b/gcc/config/i386/avx10_2bf16intrin.h
@@ -905,10 +905,10 @@ _mm_maskz_getexp_pbh (__mmask8 __U, __m128bh __A)
 #ifdef __OPTIMIZE__
 extern __inline__ __m256bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_roundscale_pbh (__m256bh __A, int B)
+_mm256_roundscale_pbh (__m256bh __A, int __B)
 {
   return (__m256bh)
-    __builtin_ia32_rndscalebf16256_mask (__A, B,
+    __builtin_ia32_rndscalebf16256_mask (__A, __B,
                                         (__v16bf) _mm256_setzero_si256 (),
                                         (__mmask16) -1);
 }
@@ -916,28 +916,28 @@ _mm256_roundscale_pbh (__m256bh __A, int B)
 extern __inline__ __m256bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_roundscale_pbh (__m256bh __W, __mmask16 __U,
-                           __m256bh __A, int B)
+                           __m256bh __A, int __B)
 {
   return (__m256bh)
-    __builtin_ia32_rndscalebf16256_mask (__A, B, __W, __U);
+    __builtin_ia32_rndscalebf16256_mask (__A, __B, __W, __U);
 }
 
 extern __inline__ __m256bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_roundscale_pbh (__mmask16 __U, __m256bh __A, int B)
+_mm256_maskz_roundscale_pbh (__mmask16 __U, __m256bh __A, int __B)
 {
   return (__m256bh)
-    __builtin_ia32_rndscalebf16256_mask (__A, B,
+    __builtin_ia32_rndscalebf16256_mask (__A, __B,
                                         (__v16bf) _mm256_setzero_si256 (),
                                         __U);
 }
 
 extern __inline__ __m128bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_roundscale_pbh (__m128bh __A, int B)
+_mm_roundscale_pbh (__m128bh __A, int __B)
 {
   return (__m128bh)
-    __builtin_ia32_rndscalebf16128_mask (__A, B,
+    __builtin_ia32_rndscalebf16128_mask (__A, __B,
                                         (__v8bf) _mm_setzero_si128 (),
                                         (__mmask8) -1);
 }
@@ -945,18 +945,18 @@ _mm_roundscale_pbh (__m128bh __A, int B)
 extern __inline__ __m128bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_roundscale_pbh (__m128bh __W, __mmask8 __U,
-                        __m128bh __A, int B)
+                        __m128bh __A, int __B)
 {
   return (__m128bh)
-    __builtin_ia32_rndscalebf16128_mask (__A, B, __W, __U);
+    __builtin_ia32_rndscalebf16128_mask (__A, __B, __W, __U);
 }
 
 extern __inline__ __m128bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_roundscale_pbh (__mmask8 __U, __m128bh __A, int B)
+_mm_maskz_roundscale_pbh (__mmask8 __U, __m128bh __A, int __B)
 {
   return (__m128bh)
-    __builtin_ia32_rndscalebf16128_mask (__A, B,
+    __builtin_ia32_rndscalebf16128_mask (__A, __B,
                                         (__v8bf) _mm_setzero_si128 (),
                                         __U);
 }
@@ -994,10 +994,10 @@ _mm_maskz_roundscale_pbh (__mmask8 __U, __m128bh __A, int 
B)
 #ifdef __OPTIMIZE__
 extern __inline__ __m256bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_reduce_pbh (__m256bh __A, int B)
+_mm256_reduce_pbh (__m256bh __A, int __B)
 {
   return (__m256bh)
-    __builtin_ia32_reducebf16256_mask (__A, B,
+    __builtin_ia32_reducebf16256_mask (__A, __B,
                                       (__v16bf) _mm256_setzero_si256 (),
                                       (__mmask16) -1);
 }
@@ -1005,28 +1005,28 @@ _mm256_reduce_pbh (__m256bh __A, int B)
 extern __inline__ __m256bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm256_mask_reduce_pbh (__m256bh __W, __mmask16 __U,
-                       __m256bh __A, int B)
+                       __m256bh __A, int __B)
 {
   return (__m256bh)
-    __builtin_ia32_reducebf16256_mask (__A, B, __W, __U);
+    __builtin_ia32_reducebf16256_mask (__A, __B, __W, __U);
 }
 
 extern __inline__ __m256bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm256_maskz_reduce_pbh (__mmask16 __U, __m256bh __A, int B)
+_mm256_maskz_reduce_pbh (__mmask16 __U, __m256bh __A, int __B)
 {
   return (__m256bh)
-    __builtin_ia32_reducebf16256_mask (__A, B,
+    __builtin_ia32_reducebf16256_mask (__A, __B,
                                       (__v16bf) _mm256_setzero_si256 (),
                                       __U);
 }
 
 extern __inline__ __m128bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_reduce_pbh (__m128bh __A, int B)
+_mm_reduce_pbh (__m128bh __A, int __B)
 {
   return (__m128bh)
-    __builtin_ia32_reducebf16128_mask (__A, B,
+    __builtin_ia32_reducebf16128_mask (__A, __B,
                                       (__v8bf) _mm_setzero_si128 (),
                                       (__mmask8) -1);
 }
@@ -1034,18 +1034,18 @@ _mm_reduce_pbh (__m128bh __A, int B)
 extern __inline__ __m128bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
 _mm_mask_reduce_pbh (__m128bh __W, __mmask8 __U,
-                    __m128bh __A, int B)
+                    __m128bh __A, int __B)
 {
   return (__m128bh)
-    __builtin_ia32_reducebf16128_mask (__A, B, __W, __U);
+    __builtin_ia32_reducebf16128_mask (__A, __B, __W, __U);
 }
 
 extern __inline__ __m128bh
 __attribute__ ((__gnu_inline__, __always_inline__, __artificial__))
-_mm_maskz_reduce_pbh (__mmask8 __U, __m128bh __A, int B)
+_mm_maskz_reduce_pbh (__mmask8 __U, __m128bh __A, int __B)
 {
   return (__m128bh)
-    __builtin_ia32_reducebf16128_mask (__A, B,
+    __builtin_ia32_reducebf16128_mask (__A, __B,
                                       (__v8bf) _mm_setzero_si128 (),
                                       __U);
 }

Reply via email to