]> git.pld-linux.org Git - packages/valgrind.git/blobdiff - valgrind-native-cpuid.patch
- up to 3.9.0
[packages/valgrind.git] / valgrind-native-cpuid.patch
index 9fccee225071f7c0f2a4ce8296a9f466707ad80a..4e92dfea6835f31c73a648b6dca96c1d2cd4fdbc 100644 (file)
@@ -49,19 +49,17 @@ diff -uNr valgrind-3.6.0.orig/VEX/priv/guest_amd64_helpers.c valgrind-3.6.0/VEX/
 diff -uNr valgrind-3.6.0.orig/VEX/priv/guest_amd64_toIR.c valgrind-3.6.0/VEX/priv/guest_amd64_toIR.c
 --- valgrind-3.6.0.orig/VEX/priv/guest_amd64_toIR.c    2011-01-17 20:35:34.380376775 +0100
 +++ valgrind-3.6.0/VEX/priv/guest_amd64_toIR.c 2011-01-17 20:36:00.891571709 +0100
 diff -uNr valgrind-3.6.0.orig/VEX/priv/guest_amd64_toIR.c valgrind-3.6.0/VEX/priv/guest_amd64_toIR.c
 --- valgrind-3.6.0.orig/VEX/priv/guest_amd64_toIR.c    2011-01-17 20:35:34.380376775 +0100
 +++ valgrind-3.6.0/VEX/priv/guest_amd64_toIR.c 2011-01-17 20:36:00.891571709 +0100
-@@ -19903,7 +19903,11 @@
-       HChar*   fName = NULL;
+@@ -21165,6 +21165,10 @@ Long dis_ESC_0F (
+       const HChar*   fName = NULL;
        void*    fAddr = NULL;
        if (haveF2orF3(pfx)) goto decode_failure;
        void*    fAddr = NULL;
        if (haveF2orF3(pfx)) goto decode_failure;
--      if (archinfo->hwcaps == (VEX_HWCAPS_AMD64_SSE3
 +      if (vex_control.iropt_native_cpuid) {
 +         fName = "amd64g_dirtyhelper_CPUID_native";
 +         fAddr = &amd64g_dirtyhelper_CPUID_native;
 +      if (vex_control.iropt_native_cpuid) {
 +         fName = "amd64g_dirtyhelper_CPUID_native";
 +         fAddr = &amd64g_dirtyhelper_CPUID_native;
-+      }
-+      else if (archinfo->hwcaps == (VEX_HWCAPS_AMD64_SSE3
-                                |VEX_HWCAPS_AMD64_CX16 
-                                |VEX_HWCAPS_AMD64_AVX)) {
-          fName = "amd64g_dirtyhelper_CPUID_avx_and_cx16";
++      } else
+       /* This isn't entirely correct, CPUID should depend on the VEX
+          capabilities, not on the underlying CPU. See bug #324882. */
+       if ((archinfo->hwcaps & VEX_HWCAPS_AMD64_SSE3) &&
 diff -uNr valgrind-3.6.0.orig/VEX/pub/libvex.h valgrind-3.6.0/VEX/pub/libvex.h
 --- valgrind-3.6.0.orig/VEX/pub/libvex.h       2010-10-20 22:19:52.000000000 +0200
 +++ valgrind-3.6.0/VEX/pub/libvex.h    2011-01-17 20:41:02.906490947 +0100
 diff -uNr valgrind-3.6.0.orig/VEX/pub/libvex.h valgrind-3.6.0/VEX/pub/libvex.h
 --- valgrind-3.6.0.orig/VEX/pub/libvex.h       2010-10-20 22:19:52.000000000 +0200
 +++ valgrind-3.6.0/VEX/pub/libvex.h    2011-01-17 20:41:02.906490947 +0100
This page took 0.049462 seconds and 4 git commands to generate.