| Index: base/atomicops_internals_x86_msvc.h
|
| diff --git a/base/atomicops_internals_x86_msvc.h b/base/atomicops_internals_x86_msvc.h
|
| index 016744c144416f869606881e87ee7d8072f75cdd..0269d894a1fa72d592d3e85b824d84612bb0090f 100644
|
| --- a/base/atomicops_internals_x86_msvc.h
|
| +++ b/base/atomicops_internals_x86_msvc.h
|
| @@ -9,6 +9,8 @@
|
|
|
| #include <windows.h>
|
|
|
| +#include <intrin.h>
|
| +
|
| #include "base/macros.h"
|
|
|
| #if defined(ARCH_CPU_64_BITS)
|
| @@ -26,7 +28,7 @@ namespace subtle {
|
| inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr,
|
| Atomic32 old_value,
|
| Atomic32 new_value) {
|
| - LONG result = InterlockedCompareExchange(
|
| + LONG result = _InterlockedCompareExchange(
|
| reinterpret_cast<volatile LONG*>(ptr),
|
| static_cast<LONG>(new_value),
|
| static_cast<LONG>(old_value));
|
| @@ -35,7 +37,7 @@ inline Atomic32 NoBarrier_CompareAndSwap(volatile Atomic32* ptr,
|
|
|
| inline Atomic32 NoBarrier_AtomicExchange(volatile Atomic32* ptr,
|
| Atomic32 new_value) {
|
| - LONG result = InterlockedExchange(
|
| + LONG result = _InterlockedExchange(
|
| reinterpret_cast<volatile LONG*>(ptr),
|
| static_cast<LONG>(new_value));
|
| return static_cast<Atomic32>(result);
|
| @@ -43,7 +45,7 @@ inline Atomic32 NoBarrier_AtomicExchange(volatile Atomic32* ptr,
|
|
|
| inline Atomic32 Barrier_AtomicIncrement(volatile Atomic32* ptr,
|
| Atomic32 increment) {
|
| - return InterlockedExchangeAdd(
|
| + return _InterlockedExchangeAdd(
|
| reinterpret_cast<volatile LONG*>(ptr),
|
| static_cast<LONG>(increment)) + increment;
|
| }
|
|
|