Changes in kernel/arch/ia64/include/atomic.h [228666c:e86a849a] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/ia64/include/atomic.h
r228666c re86a849a 36 36 #define KERN_ia64_ATOMIC_H_ 37 37 38 static inline atomic_count_t test_and_set(atomic_t *val)38 static inline uint64_t test_and_set(atomic_t *val) 39 39 { 40 atomic_count_t v;41 40 uint64_t v; 41 42 42 asm volatile ( 43 43 "movl %[v] = 0x1;;\n" … … 53 53 { 54 54 do { 55 while (val->count); 55 while (val->count) 56 ; 56 57 } while (test_and_set(val)); 57 58 } … … 59 60 static inline void atomic_inc(atomic_t *val) 60 61 { 61 atomic_count_tv;62 long v; 62 63 63 64 asm volatile ( … … 70 71 static inline void atomic_dec(atomic_t *val) 71 72 { 72 atomic_count_tv;73 long v; 73 74 74 75 asm volatile ( … … 79 80 } 80 81 81 static inline atomic_count_tatomic_preinc(atomic_t *val)82 static inline long atomic_preinc(atomic_t *val) 82 83 { 83 atomic_count_tv;84 long v; 84 85 85 86 asm volatile ( … … 92 93 } 93 94 94 static inline atomic_count_tatomic_predec(atomic_t *val)95 static inline long atomic_predec(atomic_t *val) 95 96 { 96 atomic_count_tv;97 long v; 97 98 98 99 asm volatile ( … … 105 106 } 106 107 107 static inline atomic_count_tatomic_postinc(atomic_t *val)108 static inline long atomic_postinc(atomic_t *val) 108 109 { 109 atomic_count_tv;110 long v; 110 111 111 112 asm volatile ( … … 118 119 } 119 120 120 static inline atomic_count_tatomic_postdec(atomic_t *val)121 static inline long atomic_postdec(atomic_t *val) 121 122 { 122 atomic_count_tv;123 long v; 123 124 124 125 asm volatile (
Note:
See TracChangeset
for help on using the changeset viewer.