|
@@ -209,8 +209,7 @@ static inline void __raw_write_lock(raw_rwlock_t *rw)
|
|
|
" lui %1, 0x8000 \n"
|
|
|
" sc %1, %0 \n"
|
|
|
" beqzl %1, 1b \n"
|
|
|
- " nop \n"
|
|
|
- " sync \n"
|
|
|
+ " sync \n"
|
|
|
" .set reorder \n"
|
|
|
: "=m" (rw->lock), "=&r" (tmp)
|
|
|
: "m" (rw->lock)
|
|
@@ -223,8 +222,7 @@ static inline void __raw_write_lock(raw_rwlock_t *rw)
|
|
|
" lui %1, 0x8000 \n"
|
|
|
" sc %1, %0 \n"
|
|
|
" beqz %1, 1b \n"
|
|
|
- " nop \n"
|
|
|
- " sync \n"
|
|
|
+ " sync \n"
|
|
|
" .set reorder \n"
|
|
|
: "=m" (rw->lock), "=&r" (tmp)
|
|
|
: "m" (rw->lock)
|
|
@@ -258,8 +256,7 @@ static inline int __raw_write_trylock(raw_rwlock_t *rw)
|
|
|
" lui %1, 0x8000 \n"
|
|
|
" sc %1, %0 \n"
|
|
|
" beqzl %1, 1b \n"
|
|
|
- " nop \n"
|
|
|
- " sync \n"
|
|
|
+ " sync \n"
|
|
|
" li %2, 1 \n"
|
|
|
" .set reorder \n"
|
|
|
"2: \n"
|