vserver 1.9.3
[linux-2.6.git] / arch / sparc64 / lib / atomic.S
index a0d6d8a..26463d8 100644 (file)
@@ -10,6 +10,7 @@
        .align  64
 
        .globl  __atomic_add
+       .type   __atomic_add,#function
 __atomic_add: /* %o0 = increment, %o1 = atomic_ptr */
        lduw    [%o1], %g5
        add     %g5, %o0, %g7
@@ -19,8 +20,10 @@ __atomic_add: /* %o0 = increment, %o1 = atomic_ptr */
         membar #StoreLoad | #StoreStore
        retl
         add    %g7, %o0, %o0
+       .size   __atomic_add, .-__atomic_add
 
        .globl  __atomic_sub
+       .type   __atomic_sub,#function
 __atomic_sub: /* %o0 = increment, %o1 = atomic_ptr */
        lduw    [%o1], %g5
        sub     %g5, %o0, %g7
@@ -30,8 +33,10 @@ __atomic_sub: /* %o0 = increment, %o1 = atomic_ptr */
         membar #StoreLoad | #StoreStore
        retl
         sub    %g7, %o0, %o0
+       .size   __atomic_sub, .-__atomic_sub
 
        .globl  __atomic64_add
+       .type   __atomic64_add,#function
 __atomic64_add: /* %o0 = increment, %o1 = atomic_ptr */
        ldx     [%o1], %g5
        add     %g5, %o0, %g7
@@ -41,8 +46,10 @@ __atomic64_add: /* %o0 = increment, %o1 = atomic_ptr */
         membar #StoreLoad | #StoreStore
        retl
         add    %g7, %o0, %o0
+       .size   __atomic64_add, .-__atomic64_add
 
        .globl  __atomic64_sub
+       .type   __atomic64_sub,#function
 __atomic64_sub: /* %o0 = increment, %o1 = atomic_ptr */
        ldx     [%o1], %g5
        sub     %g5, %o0, %g7
@@ -52,4 +59,4 @@ __atomic64_sub: /* %o0 = increment, %o1 = atomic_ptr */
         membar #StoreLoad | #StoreStore
        retl
         sub    %g7, %o0, %o0
-
+       .size   __atomic64_sub, .-__atomic64_sub