Changeset 1433ecda in mainline for uspace/lib/c/arch/ppc32/include/libarch/atomic.h
- Timestamp:
- 2018-04-04T15:42:37Z (7 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 2c4e1cc
- Parents:
- 47b2d7e3
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/c/arch/ppc32/include/libarch/atomic.h
r47b2d7e3 r1433ecda 45 45 46 46 asm volatile ( 47 48 49 50 51 52 53 54 55 56 47 "1:\n" 48 "lwarx %0, 0, %2\n" 49 "addic %0, %0, 1\n" 50 "stwcx. %0, 0, %2\n" 51 "bne- 1b" 52 : "=&r" (tmp), 53 "=m" (val->count) 54 : "r" (&val->count), 55 "m" (val->count) 56 : "cc" 57 57 ); 58 58 } … … 63 63 64 64 asm volatile ( 65 66 67 68 69 70 71 72 73 74 65 "1:\n" 66 "lwarx %0, 0, %2\n" 67 "addic %0, %0, -1\n" 68 "stwcx. %0, 0, %2\n" 69 "bne- 1b" 70 : "=&r" (tmp), 71 "=m" (val->count) 72 : "r" (&val->count), 73 "m" (val->count) 74 : "cc" 75 75 ); 76 76 }
Note:
See TracChangeset
for help on using the changeset viewer.