[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