< prev index next >
src/hotspot/os_cpu/windows_x86/atomic_windows_x86.hpp
Print this page
@@ -77,15 +77,15 @@
}
#define DEFINE_STUB_XCHG(ByteSize, StubType, StubName) \
template<> \
template<typename T> \
- inline T Atomic::PlatformXchg<ByteSize>::operator()(T exchange_value, \
- T volatile* dest, \
+ inline T Atomic::PlatformXchg<ByteSize>::operator()(T volatile* dest, \
+ T exchange_value, \
atomic_memory_order order) const { \
STATIC_ASSERT(ByteSize == sizeof(T)); \
- return xchg_using_helper<StubType>(StubName, exchange_value, dest); \
+ return xchg_using_helper<StubType>(StubName, dest, exchange_value); \
}
DEFINE_STUB_XCHG(4, int32_t, os::atomic_xchg_func)
DEFINE_STUB_XCHG(8, int64_t, os::atomic_xchg_long_func)
@@ -125,12 +125,12 @@
}
}
template<>
template<typename T>
-inline T Atomic::PlatformXchg<4>::operator()(T exchange_value,
- T volatile* dest,
+inline T Atomic::PlatformXchg<4>::operator()(T volatile* dest,
+ T exchange_value,
atomic_memory_order order) const {
STATIC_ASSERT(4 == sizeof(T));
// alternative for InterlockedExchange
__asm {
mov eax, exchange_value;
< prev index next >