Fix BMI assembler configure check and avx2/bmi/fma vgtest prereqs.
#317461.  (Mark Wielaard, mjw@redhat.com)


git-svn-id: svn://svn.valgrind.org/valgrind/trunk@13343 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/configure.in b/configure.in
index 747ccd4..6e2a675 100644
--- a/configure.in
+++ b/configure.in
@@ -1940,9 +1940,9 @@
 AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[]], [[
   do { unsigned int h, l;
    __asm__ __volatile__(
-      "andn %2, %1, %0" : "=r" (h) : "r" (0x1234567), "r" (0x7654321) ); }
+      "andn %2, %1, %0" : "=r" (h) : "r" (0x1234567), "r" (0x7654321) );
    __asm__ __volatile__(
-      "movl %2, %%edx; mulx %3, %1, %0" : "=r" (h), "=r" (l) : "g" (0x1234567), "g" (0x7654321) : "edx" ); }
+      "movl %2, %%edx; mulx %3, %1, %0" : "=r" (h), "=r" (l) : "g" (0x1234567), "rm" (0x7654321) : "edx" ); }
   while (0)
 ]])], [
 ac_have_as_bmi=yes
diff --git a/none/tests/amd64/avx2-1.vgtest b/none/tests/amd64/avx2-1.vgtest
index cead069..8f14db7 100644
--- a/none/tests/amd64/avx2-1.vgtest
+++ b/none/tests/amd64/avx2-1.vgtest
@@ -1,3 +1,3 @@
 prog: avx2-1
-prereq: ../../../tests/x86_amd64_features amd64-avx
+prereq: test -x avx2-1 && ../../../tests/x86_amd64_features amd64-avx
 vgopts: -q
diff --git a/none/tests/amd64/bmi.vgtest b/none/tests/amd64/bmi.vgtest
index 3676d92..5437496 100644
--- a/none/tests/amd64/bmi.vgtest
+++ b/none/tests/amd64/bmi.vgtest
@@ -1,3 +1,3 @@
 prog: bmi
-prereq: ../../../tests/x86_amd64_features amd64-avx
+prereq: test -x bmi && ../../../tests/x86_amd64_features amd64-avx
 vgopts: -q
diff --git a/none/tests/amd64/fma.vgtest b/none/tests/amd64/fma.vgtest
index 58adff8..cbd2ce3 100644
--- a/none/tests/amd64/fma.vgtest
+++ b/none/tests/amd64/fma.vgtest
@@ -1,3 +1,3 @@
 prog: fma
-prereq: ../../../tests/x86_amd64_features amd64-avx
+prereq: test -x fma && ../../../tests/x86_amd64_features amd64-avx
 vgopts: -q