Changeset 80d2bdb in mainline for arch/ia64/include/atomic.h
- Timestamp:
- 2005-12-15T16:10:19Z (20 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b4cad8b2
- Parents:
- 7dd2561
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
arch/ia64/include/atomic.h
r7dd2561 r80d2bdb 32 32 #include <arch/types.h> 33 33 34 typedef volatile __u64atomic_t;34 typedef struct { volatile __u64 count; } atomic_t; 35 35 36 36 static inline atomic_t atomic_add(atomic_t *val, int imm) … … 39 39 40 40 41 __asm__ volatile ("fetchadd8.rel %0 = %1, %2\n" : "=r" (v), "+m" ( *val) : "i" (imm));41 __asm__ volatile ("fetchadd8.rel %0 = %1, %2\n" : "=r" (v), "+m" (val->count) : "i" (imm)); 42 42 43 43 return v; 44 } 45 46 static inline void atomic_set(atomic_t *val, __u64 i) 47 { 48 val->count = i; 49 } 50 51 static inline __u32 atomic_get(atomic_t *val) 52 { 53 return val->count; 44 54 } 45 55
Note:
See TracChangeset
for help on using the changeset viewer.