mirror of
https://github.com/boostorg/smart_ptr.git
synced 2025-07-31 13:17:23 +02:00
Clear reservation for 970 (thanks to Miro Jurisic and Philip Koch)
[SVN r28060]
This commit is contained in:
@@ -64,14 +64,15 @@ loop:
|
|||||||
|
|
||||||
lwarx r4, 0, r3
|
lwarx r4, 0, r3
|
||||||
cmpwi r4, 0
|
cmpwi r4, 0
|
||||||
beq done
|
beq store
|
||||||
|
|
||||||
addi r4, r4, 1
|
addi r4, r4, 1
|
||||||
|
|
||||||
|
store:
|
||||||
|
|
||||||
stwcx. r4, 0, r3
|
stwcx. r4, 0, r3
|
||||||
bne- loop
|
bne- loop
|
||||||
|
|
||||||
done:
|
|
||||||
|
|
||||||
mr r3, r4
|
mr r3, r4
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -90,9 +90,9 @@ inline long atomic_conditional_increment( long * pw )
|
|||||||
"cmpwi %1, 0\n\t"
|
"cmpwi %1, 0\n\t"
|
||||||
"beq 1f\n\t"
|
"beq 1f\n\t"
|
||||||
"addi %1, %1, 1\n\t"
|
"addi %1, %1, 1\n\t"
|
||||||
|
"1:\n\t"
|
||||||
"stwcx. %1, 0, %2\n\t"
|
"stwcx. %1, 0, %2\n\t"
|
||||||
"bne- 0b\n\t"
|
"bne- 0b":
|
||||||
"1:":
|
|
||||||
|
|
||||||
"=m"( *pw ), "=&b"( rv ):
|
"=m"( *pw ), "=&b"( rv ):
|
||||||
"r"( pw ):
|
"r"( pw ):
|
||||||
|
Reference in New Issue
Block a user