Changeset 1433ecda in mainline for uspace/lib/c/arch/ppc32
- 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
- Location:
- uspace/lib/c/arch/ppc32
- Files:
-
- 3 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 } -
uspace/lib/c/arch/ppc32/include/libarch/tls.h
r47b2d7e3 r1433ecda 50 50 51 51 asm volatile ( 52 53 54 52 "mr %%r2, %0\n" 53 : 54 : "r" (tp) 55 55 ); 56 56 } 57 57 58 static inline tcb_t * 58 static inline tcb_t *__tcb_get(void) 59 59 { 60 void * 60 void *retval; 61 61 62 62 asm volatile ( 63 64 63 "mr %0, %%r2\n" 64 : "=r" (retval) 65 65 ); 66 66 -
uspace/lib/c/arch/ppc32/src/syscall.c
r47b2d7e3 r1433ecda 49 49 50 50 asm volatile ( 51 52 53 54 55 56 57 58 59 51 "sc\n" 52 : "=r" (__ppc32_reg_r3) 53 : "r" (__ppc32_reg_r3), 54 "r" (__ppc32_reg_r4), 55 "r" (__ppc32_reg_r5), 56 "r" (__ppc32_reg_r6), 57 "r" (__ppc32_reg_r7), 58 "r" (__ppc32_reg_r8), 59 "r" (__ppc32_reg_r9) 60 60 ); 61 61
Note:
See TracChangeset
for help on using the changeset viewer.