I missed an additional colon in previous patch. Oops. to make that mistake
less likely in the future, add comments as placeholders for unused inputs
and outputs in inline assembly.
" xchgb %0,%1 \n"
"1: \n"
: "+q"(_res), "+m"(*lock)
-:
+: /* no inputs */
: "memory", "cc");
return (int) _res;
}
" lock \n"
" xchgb %0,%1 \n"
: "+q"(_res), "+m"(*lock)
-:
+: /* no inputs */
: "memory", "cc");
return (int) _res;
}
" tas %1 \n"
" sne %0 \n"
: "=d"(rv), "+m"(*lock)
-:
+: /* no inputs */
: "memory", "cc");
return rv;
}
" sync \n"
" .set pop "
: "=&r" (_res), "=&r" (_tmp), "+R" (*_l)
-:
+: /* no inputs */
: "memory");
return _res;
}
" .set nomacro \n" \
" sync \n" \
" .set pop " \
-: \
+: /* no outputs */ \
+: /* no inputs */ \
: "memory"); \
*((volatile slock_t *) (lock)) = 0; \
} while (0)