diff options
author | Alex Rønne Petersen <alexrp@xamarin.com> | 2013-09-25 20:20:53 +0200 |
---|---|---|
committer | Jo Shields <directhex@apebox.org> | 2013-10-23 15:10:07 +0100 |
commit | c1a8be1097f89b2fd75e29ca32319acc27812e95 (patch) | |
tree | bfd216c25bc94435e330b7243bbc9e4a1bf6bd7e | |
parent | 07c705d468b7f42ad353eb86de2b7284693b656d (diff) | |
download | mono-c1a8be1097f89b2fd75e29ca32319acc27812e95.tar.gz |
Use InterlockedDecrement64 () for Interlocked.Decrement (long&).
(cherry picked from commit 15f9be5d0367b5d5ee168b038878d098ee51d5aa)
-rwxr-xr-x | mono/metadata/threads.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/mono/metadata/threads.c b/mono/metadata/threads.c index b4c7a72557..66e7f8c052 100755 --- a/mono/metadata/threads.c +++ b/mono/metadata/threads.c @@ -1799,15 +1799,7 @@ gint32 ves_icall_System_Threading_Interlocked_Decrement_Int (gint32 *location) gint64 ves_icall_System_Threading_Interlocked_Decrement_Long (gint64 * location) { - gint64 ret; - - mono_interlocked_lock (); - - ret = -- *location; - - mono_interlocked_unlock (); - - return ret; + return InterlockedDecrement64 (location); } gint32 ves_icall_System_Threading_Interlocked_Exchange_Int (gint32 *location, gint32 value) |