mirror of
https://github.com/mangosfour/server.git
synced 2025-12-12 01:37:00 +00:00
Some missing from merge.
Signed-off-by: Salja <salja2012@hotmail.de>
This commit is contained in:
parent
ec939a5bce
commit
f4be15a7af
1895 changed files with 160408 additions and 53601 deletions
|
|
@ -1,3 +1,5 @@
|
|||
// $Id: Atomic_Op.cpp 96985 2013-04-11 15:50:32Z huangh $
|
||||
|
||||
#include "ace/Atomic_Op.h"
|
||||
#include "ace/OS_NS_unistd.h"
|
||||
|
||||
|
|
@ -32,7 +34,7 @@ single_cpu_increment (volatile long *value)
|
|||
(defined (__SUNPRO_CC) && (defined (__i386) || defined (__x86_64))))
|
||||
return ace_atomic_add_long (
|
||||
reinterpret_cast<volatile unsigned long*> (value), 1);
|
||||
#elif defined(__GNUC__) && defined(__PPC__)
|
||||
#elif defined(__GNUC__) && defined(PPC)
|
||||
long tmp;
|
||||
asm("lwz %0,%1" : "=r" (tmp) : "m" (*value) );
|
||||
asm("addi %0,%0,1" : "+r" (tmp) );
|
||||
|
|
@ -56,7 +58,7 @@ single_cpu_decrement (volatile long *value)
|
|||
(defined (__SUNPRO_CC) && (defined (__i386) || defined (__x86_64))))
|
||||
return ace_atomic_add_long (
|
||||
reinterpret_cast<volatile unsigned long*> (value), -1);
|
||||
#elif defined(__GNUC__) && defined(__PPC__)
|
||||
#elif defined(__GNUC__) && defined(PPC)
|
||||
long tmp;
|
||||
asm("lwz %0,%1" : "=r" (tmp) : "m" (*value) );
|
||||
asm("addi %0,%0,-1" : "+r" (tmp) );
|
||||
|
|
@ -79,7 +81,7 @@ single_cpu_exchange (volatile long *value, long rhs)
|
|||
(defined (__SUNPRO_CC) && (defined (__i386) || defined (__x86_64))))
|
||||
return ace_atomic_swap_long (
|
||||
reinterpret_cast<volatile unsigned long*> (value), rhs);
|
||||
#elif defined(__GNUC__) && defined(__PPC__)
|
||||
#elif defined(__GNUC__) && defined(PPC)
|
||||
long tmp;
|
||||
asm("lwz %0,%1" : "=r" (tmp) : "m" (rhs) );
|
||||
asm("stw %0,%1" : "+r" (tmp), "=m" (*value) );
|
||||
|
|
@ -102,7 +104,7 @@ single_cpu_exchange_add (volatile long *value, long rhs)
|
|||
(defined (__SUNPRO_CC) && (defined (__i386) || defined (__x86_64))))
|
||||
return ace_atomic_swap_add_long (
|
||||
reinterpret_cast<volatile unsigned long*> (value), rhs);
|
||||
#elif defined(__GNUC__) && defined(__PPC__)
|
||||
#elif defined(__GNUC__) && defined(PPC)
|
||||
long tmp;
|
||||
asm("add %0,%1,%2" : "=r" (tmp) : "r" (*value), "r" (rhs) );
|
||||
asm("stw %0,%1" : "+r" (tmp), "=m" (*value) );
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue