Fix the wrong return value of both InternalSyncIncrement()
and InternalSyncDecrement(). The return value shouldn't
be the address of input parameter. It should be the updated
value of input parameter instead.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Haojian Zhuang <haojian.zhuang@linaro.org>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18685
6f19259b-4bc3-4df7-8a09-
765794883524
add w1, w1, #1\r
stxr w2, w1, [x0]\r
cbnz w2, TryInternalSyncIncrement\r
add w1, w1, #1\r
stxr w2, w1, [x0]\r
cbnz w2, TryInternalSyncIncrement\r
sub w1, w1, #1\r
stxr w2, w1, [x0]\r
cbnz w2, TryInternalSyncDecrement\r
sub w1, w1, #1\r
stxr w2, w1, [x0]\r
cbnz w2, TryInternalSyncDecrement\r