Changeset 1433ecda in mainline for uspace/lib/c/arch/ia32/include/libarch/atomic.h
- Timestamp:
- 2018-04-04T15:42:37Z (8 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2c4e1cc
- Parents:
- 47b2d7e3
- File:
-
- 1 edited
-
uspace/lib/c/arch/ia32/include/libarch/atomic.h (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/ia32/include/libarch/atomic.h
r47b2d7e3 r1433ecda 44 44 #ifdef __PCC__ 45 45 asm volatile ( 46 "lock incl %0\n"47 : "+m" (val->count)46 "lock incl %0\n" 47 : "+m" (val->count) 48 48 ); 49 49 #else 50 50 asm volatile ( 51 "lock incl %[count]\n"52 : [count] "+m" (val->count)51 "lock incl %[count]\n" 52 : [count] "+m" (val->count) 53 53 ); 54 54 #endif … … 59 59 #ifdef __PCC__ 60 60 asm volatile ( 61 "lock decl %0\n"62 : "+m" (val->count)61 "lock decl %0\n" 62 : "+m" (val->count) 63 63 ); 64 64 #else 65 65 asm volatile ( 66 "lock decl %[count]\n"67 : [count] "+m" (val->count)66 "lock decl %[count]\n" 67 : [count] "+m" (val->count) 68 68 ); 69 69 #endif … … 76 76 #ifdef __PCC__ 77 77 asm volatile ( 78 "lock xaddl %1, %0\n"79 : "+m" (val->count),80 "+r" (r)78 "lock xaddl %1, %0\n" 79 : "+m" (val->count), 80 "+r" (r) 81 81 ); 82 82 #else 83 83 asm volatile ( 84 "lock xaddl %[r], %[count]\n"85 : [count] "+m" (val->count),86 [r] "+r" (r)84 "lock xaddl %[r], %[count]\n" 85 : [count] "+m" (val->count), 86 [r] "+r" (r) 87 87 ); 88 88 #endif … … 97 97 #ifdef __PCC__ 98 98 asm volatile ( 99 "lock xaddl %1, %0\n"100 : "+m" (val->count),101 "+r" (r)99 "lock xaddl %1, %0\n" 100 : "+m" (val->count), 101 "+r" (r) 102 102 ); 103 103 #else 104 104 asm volatile ( 105 "lock xaddl %[r], %[count]\n"106 : [count] "+m" (val->count),107 [r] "+r" (r)105 "lock xaddl %[r], %[count]\n" 106 : [count] "+m" (val->count), 107 [r] "+r" (r) 108 108 ); 109 109 #endif
Note:
See TracChangeset
for help on using the changeset viewer.
