diff mbox series

x86-64: Simplify minimum ISA check ifdef conditional with if

Message ID 20240302003843.3333713-1-skpgkp2@gmail.com
State New
Headers show
Series x86-64: Simplify minimum ISA check ifdef conditional with if | expand

Commit Message

Sunil Pandey March 2, 2024, 12:38 a.m. UTC
Replace minimum ISA check ifdef conditional with if.  Since
MINIMUM_X86_ISA_LEVEL and AVX_X86_ISA_LEVEL are compile time constants,
compiler will perform constant folding optimization getting same result.
---
 sysdeps/x86/cpu-features.c | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

Comments

H.J. Lu March 3, 2024, 9:46 p.m. UTC | #1
On Fri, Mar 1, 2024 at 4:40 PM Sunil K Pandey <skpgkp2@gmail.com> wrote:
>
> Replace minimum ISA check ifdef conditional with if.  Since
> MINIMUM_X86_ISA_LEVEL and AVX_X86_ISA_LEVEL are compile time constants,
> compiler will perform constant folding optimization getting same result.
> ---
>  sysdeps/x86/cpu-features.c | 19 ++++++++-----------
>  1 file changed, 8 insertions(+), 11 deletions(-)
>
> diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
> index e7c7ece462..4ea373dffa 100644
> --- a/sysdeps/x86/cpu-features.c
> +++ b/sysdeps/x86/cpu-features.c
> @@ -1196,9 +1196,8 @@ no_cpuid:
>                TUNABLE_CALLBACK (set_x86_shstk));
>  #endif
>
> -#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
> -  if (GLRO(dl_x86_cpu_features).xsave_state_size != 0)
> -#endif
> +  if (MINIMUM_X86_ISA_LEVEL >= AVX_X86_ISA_LEVEL
> +      || (GLRO(dl_x86_cpu_features).xsave_state_size != 0))
>      {
>        if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
>         {
> @@ -1219,24 +1218,22 @@ no_cpuid:
>  #endif
>         }
>      }
> -#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
>    else
>      {
> -# ifdef __x86_64__
> +#ifdef __x86_64__
>        GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_fxsave;
> -#  ifdef SHARED
> +# ifdef SHARED
>        GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
> -#  endif
> -# else
> -#  ifdef SHARED
> +# endif
> +#else
> +# ifdef SHARED
>        if (CPU_FEATURE_USABLE_P (cpu_features, FXSR))
>         GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
>        else
>         GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fnsave;
> -#  endif
>  # endif
> -    }
>  #endif
> +    }
>
>  #ifdef SHARED
>  # ifdef __x86_64__
> --
> 2.43.0
>

LGTM.

Reviewed-by: H.J. Lu <hjl.tools@gmail.com>

Thanks.

--
H.J.
diff mbox series

Patch

diff --git a/sysdeps/x86/cpu-features.c b/sysdeps/x86/cpu-features.c
index e7c7ece462..4ea373dffa 100644
--- a/sysdeps/x86/cpu-features.c
+++ b/sysdeps/x86/cpu-features.c
@@ -1196,9 +1196,8 @@  no_cpuid:
 	       TUNABLE_CALLBACK (set_x86_shstk));
 #endif
 
-#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
-  if (GLRO(dl_x86_cpu_features).xsave_state_size != 0)
-#endif
+  if (MINIMUM_X86_ISA_LEVEL >= AVX_X86_ISA_LEVEL
+      || (GLRO(dl_x86_cpu_features).xsave_state_size != 0))
     {
       if (CPU_FEATURE_USABLE_P (cpu_features, XSAVEC))
 	{
@@ -1219,24 +1218,22 @@  no_cpuid:
 #endif
 	}
     }
-#if MINIMUM_X86_ISA_LEVEL < AVX_X86_ISA_LEVEL
   else
     {
-# ifdef __x86_64__
+#ifdef __x86_64__
       GLRO(dl_x86_64_runtime_resolve) = _dl_runtime_resolve_fxsave;
-#  ifdef SHARED
+# ifdef SHARED
       GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
-#  endif
-# else
-#  ifdef SHARED
+# endif
+#else
+# ifdef SHARED
       if (CPU_FEATURE_USABLE_P (cpu_features, FXSR))
 	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fxsave;
       else
 	GLRO(dl_x86_tlsdesc_dynamic) = _dl_tlsdesc_dynamic_fnsave;
-#  endif
 # endif
-    }
 #endif
+    }
 
 #ifdef SHARED
 # ifdef __x86_64__