Blob Blame History Raw
commit b1983ee86743f987e28d9fdb363d460bc5f3b23f
Author: Julian Seward <jseward@acm.org>
Date:   Tue May 16 06:26:48 2017 +0000

    arm64-linux: detect Cavium CPUs (implementer = 0x43) and enable the
    fallback LLSC implementation in that case.  Pertains to bug #369459.
    (VEX side changes)
    
    
    git-svn-id: svn://svn.valgrind.org/vex/trunk@3371

diff --git a/VEX/priv/main_main.c b/VEX/priv/main_main.c
index d4b142d..7c125ce 100644
--- a/VEX/priv/main_main.c
+++ b/VEX/priv/main_main.c
@@ -1468,6 +1468,7 @@ void LibVEX_default_VexArchInfo ( /*OUT*/VexArchInfo* vai )
    vai->ppc_dcbzl_szB           = 0;
    vai->arm64_dMinLine_lg2_szB  = 0;
    vai->arm64_iMinLine_lg2_szB  = 0;
+   vai->arm64_requires_fallback_LLSC = False;
    vai->hwcache_info.num_levels = 0;
    vai->hwcache_info.num_caches = 0;
    vai->hwcache_info.caches     = NULL;
diff --git a/VEX/pub/libvex.h b/VEX/pub/libvex.h
index b0ce1da..d75919d 100644
--- a/VEX/pub/libvex.h
+++ b/VEX/pub/libvex.h
@@ -323,6 +323,9 @@ typedef
          line size of 64 bytes would be encoded here as 6. */
       UInt arm64_dMinLine_lg2_szB;
       UInt arm64_iMinLine_lg2_szB;
+      /* ARM64: does the host require us to use the fallback LLSC
+         implementation? */
+      Bool arm64_requires_fallback_LLSC;
    }
    VexArchInfo;