|
From: <sv...@va...> - 2016-09-20 17:57:07
|
Author: mjw
Date: Tue Sep 20 18:57:00 2016
New Revision: 15971
Log:
Add a feature check for tests that use -march=armv8-a+crc.
Older gcc versions for arm64 don't support the crc arch feature.
Modified:
trunk/configure.ac
trunk/none/tests/arm64/Makefile.am
trunk/none/tests/arm64/crc32.vgtest
Modified: trunk/configure.ac
==============================================================================
--- trunk/configure.ac (original)
+++ trunk/configure.ac Tue Sep 20 18:57:00 2016
@@ -2685,6 +2685,29 @@
AM_CONDITIONAL(BUILD_IFUNC_TESTS, test x$ac_have_ifunc_attr = xyes)
+# Does the C compiler support the armv8 crc feature flag
+# Note, this doesn't generate a C-level symbol. It generates a
+# automake-level symbol (BUILD_ARMV8_CRC_TESTS), used in test Makefile.am's
+AC_MSG_CHECKING([if gcc supports the armv8 crc feature flag])
+
+save_CFLAGS="$CFLAGS"
+CFLAGS="$CFLAGS -march=armv8-a+crc -Werror"
+AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
+int main()
+{
+ return 0;
+}
+]])], [
+ac_have_armv8_crc_feature=yes
+AC_MSG_RESULT([yes])
+], [
+ac_have_armv8_crc_feature=no
+AC_MSG_RESULT([no])
+])
+CFLAGS="$save_CFLAGS"
+
+AM_CONDITIONAL(BUILD_ARMV8_CRC_TESTS, test x$ac_have_armv8_crc_feature = xyes)
+
# XXX JRS 2010 Oct 13: what is this for? For sure, we don't need this
# when building the tool executables. I think we should get rid of it.
Modified: trunk/none/tests/arm64/Makefile.am
==============================================================================
--- trunk/none/tests/arm64/Makefile.am (original)
+++ trunk/none/tests/arm64/Makefile.am Tue Sep 20 18:57:00 2016
@@ -12,12 +12,15 @@
check_PROGRAMS = \
allexec \
- crc32 \
cvtf_imm \
fp_and_simd \
integer \
memory
+if BUILD_ARMV8_CRC_TESTS
+ check_PROGRAMS += crc32
+endif
+
AM_CFLAGS += @FLAG_M64@
AM_CXXFLAGS += @FLAG_M64@
AM_CCASFLAGS += @FLAG_M64@
Modified: trunk/none/tests/arm64/crc32.vgtest
==============================================================================
--- trunk/none/tests/arm64/crc32.vgtest (original)
+++ trunk/none/tests/arm64/crc32.vgtest Tue Sep 20 18:57:00 2016
@@ -1,2 +1,3 @@
prog: crc32
+prereq: test -x crc32
vgopts: -q
|