[compiler-rt] a5a17e8 - fixup! [builtins] Refactor cpu_model support to reduce #if nesting. NFCI

Jon Roelofs via llvm-commits llvm-commits at lists.llvm.org
Tue Dec 19 10:39:27 PST 2023


Author: Jon Roelofs
Date: 2023-12-19T11:39:13-07:00
New Revision: a5a17e8fadd4cfe06e06fcac20243ca38f503363

URL: https://github.com/llvm/llvm-project/commit/a5a17e8fadd4cfe06e06fcac20243ca38f503363
DIFF: https://github.com/llvm/llvm-project/commit/a5a17e8fadd4cfe06e06fcac20243ca38f503363.diff

LOG: fixup! [builtins] Refactor cpu_model support to reduce #if nesting. NFCI

Added: 
    

Modified: 
    compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc
    compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
    compiler-rt/lib/builtins/cpu_model/aarch64/fmv/sysauxv.inc

Removed: 
    


################################################################################
diff  --git a/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc b/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc
index a80186ba064d41..8fccede18c7183 100644
--- a/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc
+++ b/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/android.inc
@@ -25,9 +25,12 @@ void CONSTRUCTOR_ATTRIBUTE __init_cpu_features(void) {
   if (__isExynos9810())
     return;
 
+  unsgined long hwcap = getauxval(AT_HWCAP);
+  unsigned long hwcap2 = getauxval(AT_HWCAP2);
+
   __ifunc_arg_t arg;
   arg._size = sizeof(__ifunc_arg_t);
-  arg._hwcap = getauxval(AT_HWCAP);
-  arg._hwcap2 = getauxval(AT_HWCAP2);
+  arg._hwcap = hwcap;
+  arg._hwcap2 = hwcap2;
   __init_cpu_features_constructor(hwcap | _IFUNC_ARG_HWCAP, &arg);
 }

diff  --git a/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc b/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
index 7db1dbd0852d84..3fffafd8c2492e 100644
--- a/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
+++ b/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
@@ -11,9 +11,12 @@ void CONSTRUCTOR_ATTRIBUTE __init_cpu_features(void) {
   if (__aarch64_cpu_features.features)
     return;
 
+  unsgined long hwcap = getauxval(AT_HWCAP);
+  unsigned long hwcap2 = getauxval(AT_HWCAP2);
+
   __ifunc_arg_t arg;
   arg._size = sizeof(__ifunc_arg_t);
-  arg._hwcap = getauxval(AT_HWCAP);
-  arg._hwcap2 = getauxval(AT_HWCAP2);
+  arg._hwcap = hwcap;
+  arg._hwcap2 = hwcap2;
   __init_cpu_features_constructor(hwcap | _IFUNC_ARG_HWCAP, &arg);
 }

diff  --git a/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/sysauxv.inc b/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/sysauxv.inc
index 52fb7ab4a0e530..8af05d941a5378 100644
--- a/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/sysauxv.inc
+++ b/compiler-rt/lib/builtins/cpu_model/aarch64/fmv/sysauxv.inc
@@ -9,9 +9,13 @@ void CONSTRUCTOR_ATTRIBUTE __init_cpu_features(void) {
   // CPU features already initialized.
   if (__aarch64_cpu_features.features)
     return;
+
+  unsgined long hwcap = getauxval(AT_HWCAP);
+  unsigned long hwcap2 = getauxval(AT_HWCAP2);
+
   __ifunc_arg_t arg;
   arg._size = sizeof(__ifunc_arg_t);
-  arg._hwcap = getauxval(AT_HWCAP);
-  arg._hwcap2 = getauxval(AT_HWCAP2);
+  arg._hwcap = hwcap;
+  arg._hwcap2 = hwcap2;
   __init_cpu_features_constructor(hwcap | _IFUNC_ARG_HWCAP, &arg);
 }


        


More information about the llvm-commits mailing list