Loading libcutils/atomic-android-arm.S +18 −0 Original line number Diff line number Diff line Loading @@ -66,6 +66,8 @@ android_atomic_write: */ android_atomic_inc: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r2, r0 1: @ android_atomic_inc Loading @@ -85,6 +87,7 @@ android_atomic_inc: sub r0, r1, #1 ldmia sp!, {r4, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -94,6 +97,8 @@ android_atomic_inc: */ android_atomic_dec: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r2, r0 1: @ android_atomic_dec Loading @@ -113,6 +118,7 @@ android_atomic_dec: add r0, r1, #1 ldmia sp!, {r4, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -122,6 +128,8 @@ android_atomic_dec: */ android_atomic_add: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r2, r1 mov r4, r0 Loading @@ -142,6 +150,7 @@ android_atomic_add: sub r0, r1, r4 ldmia sp!, {r4, lr} bx lr .fnend /* Loading @@ -152,6 +161,8 @@ android_atomic_add: */ android_atomic_and: .fnstart .save {r4, r5, lr} stmdb sp!, {r4, r5, lr} mov r2, r1 /* r2 = address */ mov r4, r0 /* r4 = the value */ Loading @@ -174,6 +185,7 @@ android_atomic_and: mov r0, r5 ldmia sp!, {r4, r5, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -183,6 +195,8 @@ android_atomic_and: */ android_atomic_or: .fnstart .save {r4, r5, lr} stmdb sp!, {r4, r5, lr} mov r2, r1 /* r2 = address */ mov r4, r0 /* r4 = the value */ Loading @@ -205,6 +219,7 @@ android_atomic_or: mov r0, r5 ldmia sp!, {r4, r5, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -228,6 +243,8 @@ android_atomic_swap: */ android_atomic_cmpxchg: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r4, r0 /* r4 = save oldvalue */ 1: @ android_atomic_cmpxchg Loading @@ -249,6 +266,7 @@ android_atomic_cmpxchg: 2: @ android_atomic_cmpxchg ldmia sp!, {r4, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading Loading
libcutils/atomic-android-arm.S +18 −0 Original line number Diff line number Diff line Loading @@ -66,6 +66,8 @@ android_atomic_write: */ android_atomic_inc: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r2, r0 1: @ android_atomic_inc Loading @@ -85,6 +87,7 @@ android_atomic_inc: sub r0, r1, #1 ldmia sp!, {r4, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -94,6 +97,8 @@ android_atomic_inc: */ android_atomic_dec: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r2, r0 1: @ android_atomic_dec Loading @@ -113,6 +118,7 @@ android_atomic_dec: add r0, r1, #1 ldmia sp!, {r4, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -122,6 +128,8 @@ android_atomic_dec: */ android_atomic_add: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r2, r1 mov r4, r0 Loading @@ -142,6 +150,7 @@ android_atomic_add: sub r0, r1, r4 ldmia sp!, {r4, lr} bx lr .fnend /* Loading @@ -152,6 +161,8 @@ android_atomic_add: */ android_atomic_and: .fnstart .save {r4, r5, lr} stmdb sp!, {r4, r5, lr} mov r2, r1 /* r2 = address */ mov r4, r0 /* r4 = the value */ Loading @@ -174,6 +185,7 @@ android_atomic_and: mov r0, r5 ldmia sp!, {r4, r5, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -183,6 +195,8 @@ android_atomic_and: */ android_atomic_or: .fnstart .save {r4, r5, lr} stmdb sp!, {r4, r5, lr} mov r2, r1 /* r2 = address */ mov r4, r0 /* r4 = the value */ Loading @@ -205,6 +219,7 @@ android_atomic_or: mov r0, r5 ldmia sp!, {r4, r5, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading @@ -228,6 +243,8 @@ android_atomic_swap: */ android_atomic_cmpxchg: .fnstart .save {r4, lr} stmdb sp!, {r4, lr} mov r4, r0 /* r4 = save oldvalue */ 1: @ android_atomic_cmpxchg Loading @@ -249,6 +266,7 @@ android_atomic_cmpxchg: 2: @ android_atomic_cmpxchg ldmia sp!, {r4, lr} bx lr .fnend /* * ---------------------------------------------------------------------------- Loading