diff options
author | ShizZy <shizzy@6bit.net> | 2013-09-04 17:52:59 -0400 |
---|---|---|
committer | ShizZy <shizzy@6bit.net> | 2013-09-04 17:52:59 -0400 |
commit | 72325bef1d6d1e70f308e64bf7d764f9fd2abbc4 (patch) | |
tree | aa6ce8e1e769e47f435fe8ef9b1561ced9c81483 /src/common/src/atomic_win32.h | |
parent | 27474060e1287a67c45cd790d29b9095b35b2bdf (diff) |
deleted gekko's common files
Diffstat (limited to 'src/common/src/atomic_win32.h')
-rw-r--r-- | src/common/src/atomic_win32.h | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/src/common/src/atomic_win32.h b/src/common/src/atomic_win32.h deleted file mode 100644 index 9dc4506cd..000000000 --- a/src/common/src/atomic_win32.h +++ /dev/null @@ -1,76 +0,0 @@ -/** - * Copyright (C) 2005-2012 Gekko Emulator - * - * @file atomic_win32.h - * @author ShizZy <shizzy247@gmail.com> - * @date 2012-06-28 - * @brief Cross-platform atomic operations - Windows/Visual C++ - * @remark Taken from Dolphin Emulator (http://code.google.com/p/dolphin-emu/) - * - * @section LICENSE - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU General Public License as - * published by the Free Software Foundation; either version 2 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details at - * http://www.gnu.org/copyleft/gpl.html - * - * Official project repository can be found at: - * http://code.google.com/p/gekko-gc-emu/ - */ - -#ifndef COMMON_ATOMIC_WIN32_H_ -#define COMMON_ATOMIC_WIN32_H_ - -#include "types.h" - -#include <intrin.h> -#include <Windows.h> - -namespace common { - -inline void AtomicAdd(volatile u32& target, u32 value) { - InterlockedExchangeAdd((volatile LONG*)&target, (LONG)value); -} - -inline void AtomicAnd(volatile u32& target, u32 value) { - _InterlockedAnd((volatile LONG*)&target, (LONG)value); -} - -inline void AtomicIncrement(volatile u32& target) { - InterlockedIncrement((volatile LONG*)&target); -} - -inline void AtomicDecrement(volatile u32& target) { - InterlockedDecrement((volatile LONG*)&target); -} - -inline u32 AtomicLoad(volatile u32& src) { - return src; -} - -inline u32 AtomicLoadAcquire(volatile u32& src) { - u32 result = src; - _ReadBarrier(); - return result; -} - -inline void AtomicOr(volatile u32& target, u32 value) { - _InterlockedOr((volatile LONG*)&target, (LONG)value); -} - -inline void AtomicStore(volatile u32& dest, u32 value) { - dest = value; -} -inline void AtomicStoreRelease(volatile u32& dest, u32 value) { - _WriteBarrier(); - dest = value; -} - -} // namespace - -#endif // COMMON_ATOMIC_WIN32_H_
\ No newline at end of file |