summaryrefslogtreecommitdiff
path: root/pthread_mutex_lock.c
diff options
context:
space:
mode:
authorrpj <rpj>2011-07-01 00:51:56 +0000
committerrpj <rpj>2011-07-01 00:51:56 +0000
commit1e0bb8a09c86d144f3779bc4d5724afe3f637922 (patch)
treeb4c0c0a6221360107d2bf816523594352eac5f34 /pthread_mutex_lock.c
parent5af9e85e56dbcae60f771619131ecbc17980fdaa (diff)
Redo Interlocked macros; see the ChangeLog
Diffstat (limited to 'pthread_mutex_lock.c')
-rw-r--r--pthread_mutex_lock.c52
1 files changed, 26 insertions, 26 deletions
diff --git a/pthread_mutex_lock.c b/pthread_mutex_lock.c
index f6bdcbd..b54e155 100644
--- a/pthread_mutex_lock.c
+++ b/pthread_mutex_lock.c
@@ -77,13 +77,13 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
/* Non-robust */
if (PTHREAD_MUTEX_NORMAL == kind)
{
- if ((PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_EXCHANGE(
+ if ((PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) 1) != 0)
+ (PTW32_INTERLOCKED_LONG) 1) != 0)
{
- while ((PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_EXCHANGE(
+ while ((PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) -1) != 0)
+ (PTW32_INTERLOCKED_LONG) -1) != 0)
{
if (WAIT_OBJECT_0 != WaitForSingleObject (mx->event, INFINITE))
{
@@ -97,10 +97,10 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
{
pthread_t self = pthread_self();
- if ((PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_COMPARE_EXCHANGE(
+ if ((PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_COMPARE_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) 1,
- (PTW32_INTERLOCKED_VALUE) 0) == 0)
+ (PTW32_INTERLOCKED_LONG) 1,
+ (PTW32_INTERLOCKED_LONG) 0) == 0)
{
mx->recursive_count = 1;
mx->ownerThread = self;
@@ -120,9 +120,9 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
}
else
{
- while ((PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_EXCHANGE(
+ while ((PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) -1) != 0)
+ (PTW32_INTERLOCKED_LONG) -1) != 0)
{
if (WAIT_OBJECT_0 != WaitForSingleObject (mx->event, INFINITE))
{
@@ -149,9 +149,9 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
*/
ptw32_robust_state_t* statePtr = &mx->robustNode->stateInconsistent;
- if ((PTW32_INTERLOCKED_VALUE)PTW32_ROBUST_NOTRECOVERABLE == PTW32_INTERLOCKED_EXCHANGE_ADD(
+ if ((PTW32_INTERLOCKED_LONG)PTW32_ROBUST_NOTRECOVERABLE == PTW32_INTERLOCKED_EXCHANGE_ADD_LONG(
(PTW32_INTERLOCKED_PTR)statePtr,
- (PTW32_INTERLOCKED_VALUE)0))
+ (PTW32_INTERLOCKED_LONG)0))
{
result = ENOTRECOVERABLE;
}
@@ -163,24 +163,24 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
if (PTHREAD_MUTEX_NORMAL == kind)
{
- if ((PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_EXCHANGE(
+ if ((PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) 1) != 0)
+ (PTW32_INTERLOCKED_LONG) 1) != 0)
{
while (0 == (result = ptw32_robust_mutex_inherit(mutex))
- && (PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_EXCHANGE(
+ && (PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) -1) != 0)
+ (PTW32_INTERLOCKED_LONG) -1) != 0)
{
if (WAIT_OBJECT_0 != WaitForSingleObject (mx->event, INFINITE))
{
result = EINVAL;
break;
}
- if ((PTW32_INTERLOCKED_VALUE)PTW32_ROBUST_NOTRECOVERABLE ==
- PTW32_INTERLOCKED_EXCHANGE_ADD(
+ if ((PTW32_INTERLOCKED_LONG)PTW32_ROBUST_NOTRECOVERABLE ==
+ PTW32_INTERLOCKED_EXCHANGE_ADD_LONG(
(PTW32_INTERLOCKED_PTR)statePtr,
- (PTW32_INTERLOCKED_VALUE)0))
+ (PTW32_INTERLOCKED_LONG)0))
{
/* Unblock the next thread */
SetEvent(mx->event);
@@ -200,10 +200,10 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
}
else
{
- if ((PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_COMPARE_EXCHANGE(
+ if ((PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_COMPARE_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) 1,
- (PTW32_INTERLOCKED_VALUE) 0) == 0)
+ (PTW32_INTERLOCKED_LONG) 1,
+ (PTW32_INTERLOCKED_LONG) 0) == 0)
{
mx->recursive_count = 1;
/*
@@ -228,19 +228,19 @@ pthread_mutex_lock (pthread_mutex_t * mutex)
else
{
while (0 == (result = ptw32_robust_mutex_inherit(mutex))
- && (PTW32_INTERLOCKED_VALUE) PTW32_INTERLOCKED_EXCHANGE(
+ && (PTW32_INTERLOCKED_LONG) PTW32_INTERLOCKED_EXCHANGE_LONG(
(PTW32_INTERLOCKED_PTR) &mx->lock_idx,
- (PTW32_INTERLOCKED_VALUE) -1) != 0)
+ (PTW32_INTERLOCKED_LONG) -1) != 0)
{
if (WAIT_OBJECT_0 != WaitForSingleObject (mx->event, INFINITE))
{
result = EINVAL;
break;
}
- if ((PTW32_INTERLOCKED_VALUE)PTW32_ROBUST_NOTRECOVERABLE ==
- PTW32_INTERLOCKED_EXCHANGE_ADD(
+ if ((PTW32_INTERLOCKED_LONG)PTW32_ROBUST_NOTRECOVERABLE ==
+ PTW32_INTERLOCKED_EXCHANGE_ADD_LONG(
(PTW32_INTERLOCKED_PTR)statePtr,
- (PTW32_INTERLOCKED_VALUE)0))
+ (PTW32_INTERLOCKED_LONG)0))
{
/* Unblock the next thread */
SetEvent(mx->event);