summaryrefslogtreecommitdiffstats
path: root/base/atomicops.h
diff options
context:
space:
mode:
Diffstat (limited to 'base/atomicops.h')
-rw-r--r--base/atomicops.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/base/atomicops.h b/base/atomicops.h
index cf2f2bb..445696b 100644
--- a/base/atomicops.h
+++ b/base/atomicops.h
@@ -43,8 +43,14 @@ typedef __w64 int32 Atomic32;
#ifdef ARCH_CPU_64_BITS
// We need to be able to go between Atomic64 and AtomicWord implicitly. This
// means Atomic64 and AtomicWord should be the same type on 64-bit.
+#if defined(OS_NACL)
+// NaCl's intptr_t is not actually 64-bits on 64-bit!
+// http://code.google.com/p/nativeclient/issues/detail?id=1162
+typedef int64_t Atomic64;
+#else
typedef intptr_t Atomic64;
#endif
+#endif
// Use AtomicWord for a machine-sized pointer. It will use the Atomic32 or
// Atomic64 routines below, depending on your architecture.