Author: sewardj Date: 2008-02-09 12:07:40 +0000 (Sat, 09 Feb 2008) New Revision: 7387
Log: Only build the SSSE3 tests on machines whose assemblers know about these instructions. Modified: trunk/configure.in trunk/none/tests/amd64/Makefile.am trunk/none/tests/x86/Makefile.am Modified: trunk/configure.in =================================================================== --- trunk/configure.in 2008-02-09 05:10:45 UTC (rev 7386) +++ trunk/configure.in 2008-02-09 12:07:40 UTC (rev 7387) @@ -832,6 +832,28 @@ AM_CONDITIONAL(BUILD_SSE3_TESTS, test x$ac_have_as_sse3 = xyes) +# Ditto for SSSE3 instructions (note extra S) +# Note, this doesn't generate a C-level symbol. It generates a +# automake-level symbol (BUILD_SSSE3_TESTS), used in test Makefile.am's +AC_MSG_CHECKING([if x86/amd64 assembler speaks SSSE3]) + +AC_TRY_COMPILE(, [ + do { long long int x; + __asm__ __volatile__( + "pabsb (%0),%%xmm7" : : "r"(&x) : "xmm7" ); } + while (0) +], +[ +ac_have_as_ssse3=yes +AC_MSG_RESULT([yes]) +], [ +ac_have_as_ssse3=no +AC_MSG_RESULT([no]) +]) + +AM_CONDITIONAL(BUILD_SSSE3_TESTS, test x$ac_have_as_ssse3 = xyes) + + # Check for TLS support in the compiler and linker AC_CACHE_CHECK([for TLS support], vg_cv_tls, [AC_ARG_ENABLE(tls, [ --enable-tls platform supports TLS], Modified: trunk/none/tests/amd64/Makefile.am =================================================================== --- trunk/none/tests/amd64/Makefile.am 2008-02-09 05:10:45 UTC (rev 7386) +++ trunk/none/tests/amd64/Makefile.am 2008-02-09 12:07:40 UTC (rev 7387) @@ -7,6 +7,9 @@ if BUILD_SSE3_TESTS INSN_TESTS += insn_sse3 insn_ssse3 endif +if BUILD_SSSE3_TESTS + INSN_TESTS += insn_ssse3 ssse3_misaligned +endif # Explicitly include insn_sse3 even if ! BUILD_SSE3_TESTS, # to avoid packaging screwups if 'make dist' is run on a machine @@ -48,7 +51,7 @@ faultstatus fcmovnu fxtract $(INSN_TESTS) looper jrcxz \ rcl-amd64 \ redundantRexW \ - smc1 shrld ssse3_misaligned \ + smc1 shrld \ nibz_bennee_mmap \ slahf-amd64 Modified: trunk/none/tests/x86/Makefile.am =================================================================== --- trunk/none/tests/x86/Makefile.am 2008-02-09 05:10:45 UTC (rev 7386) +++ trunk/none/tests/x86/Makefile.am 2008-02-09 12:07:40 UTC (rev 7387) @@ -5,8 +5,11 @@ INSN_TESTS = insn_basic insn_fpu insn_cmov insn_mmx insn_mmxext \ insn_sse insn_sse2 if BUILD_SSE3_TESTS - INSN_TESTS += insn_sse3 insn_ssse3 + INSN_TESTS += insn_sse3 endif +if BUILD_SSSE3_TESTS + INSN_TESTS += insn_ssse3 ssse3_misaligned +endif # Explicitly include insn_sse3 even if ! BUILD_SSE3_TESTS, # to avoid packaging screwups if 'make dist' is run on a machine @@ -61,7 +64,7 @@ getseg incdec_alt $(INSN_TESTS) \ jcxz \ lahf looper movx int pushpopseg sbbmisc \ - seg_override sigcontext smc1 ssse3_misaligned yield + seg_override sigcontext smc1 yield AM_CFLAGS = $(WERROR) -Winline -Wall -Wshadow \ @FLAG_M32@ -g -I$(top_srcdir)/include \ ------------------------------------------------------------------------- This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/ _______________________________________________ Valgrind-developers mailing list Valgrind-developers@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-developers