From c0ee8ebfc6741c11a6c6ea95f4f4edd5968afd17 Mon Sep 17 00:00:00 2001 From: Jakob Olesen Date: Thu, 1 Oct 2015 11:21:00 +0200 Subject: [PATCH] Bug 1210456 - Add atomic *SafeWhenRacy() for ARM64. r=lth These methods landed with 1084248 for other architectures. A real implementation is still needed, but this allows the code to build. --- js/src/jit/arm64/AtomicOperations-arm64.h | 28 +++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/js/src/jit/arm64/AtomicOperations-arm64.h b/js/src/jit/arm64/AtomicOperations-arm64.h index 1f9449ea18c2..2706969a7bb2 100644 --- a/js/src/jit/arm64/AtomicOperations-arm64.h +++ b/js/src/jit/arm64/AtomicOperations-arm64.h @@ -104,6 +104,34 @@ js::jit::AtomicOperations::fetchXorSeqCst(T* addr, T val) return __atomic_fetch_xor(addr, val, __ATOMIC_SEQ_CST); } +template +inline T +js::jit::AtomicOperations::loadSafeWhenRacy(T* addr) +{ + return *addr; // FIXME (1208663): not yet safe +} + +template +inline void +js::jit::AtomicOperations::storeSafeWhenRacy(T* addr, T val) +{ + *addr = val; // FIXME (1208663): not yet safe +} + +inline void +js::jit::AtomicOperations::memcpySafeWhenRacy(void* dest, const void* src, + size_t nbytes) +{ + memcpy(dest, src, nbytes); // FIXME (1208663): not yet safe +} + +inline void +js::jit::AtomicOperations::memmoveSafeWhenRacy(void* dest, const void* src, + size_t nbytes) +{ + memmove(dest, src, nbytes); // FIXME (1208663): not yet safe +} + template inline void js::jit::RegionLock::acquire(void* addr)