summaryrefslogtreecommitdiff
path: root/sysdeps/x86_64/fpu/math-tests-arch.h
diff options
context:
space:
mode:
Diffstat (limited to 'sysdeps/x86_64/fpu/math-tests-arch.h')
-rw-r--r--sysdeps/x86_64/fpu/math-tests-arch.h24
1 files changed, 23 insertions, 1 deletions
diff --git a/sysdeps/x86_64/fpu/math-tests-arch.h b/sysdeps/x86_64/fpu/math-tests-arch.h
index 56714f5142..e8833bfe0a 100644
--- a/sysdeps/x86_64/fpu/math-tests-arch.h
+++ b/sysdeps/x86_64/fpu/math-tests-arch.h
@@ -16,7 +16,29 @@
License along with the GNU C Library; if not, see
<http://www.gnu.org/licenses/>. */
-#if defined REQUIRE_AVX2
+#if defined REQUIRE_AVX
+# include <init-arch.h>
+
+/* Set to 1 if AVX supported. */
+static int avx_usable;
+
+# define INIT_ARCH_EXT \
+ do \
+ { \
+ __init_cpu_features (); \
+ avx_usable = __cpu_features.feature[index_AVX_Usable] \
+ & bit_AVX_Usable; \
+ } \
+ while (0)
+
+# define CHECK_ARCH_EXT \
+ do \
+ { \
+ if (!avx_usable) return; \
+ } \
+ while (0)
+
+#elif defined REQUIRE_AVX2
# include <init-arch.h>
/* Set to 1 if AVX2 supported. */