glibc/db2/mutex/68020.gcc

19 lines
397 B
Plaintext

/*
* @(#)68020.gcc 10.2 (Sleepycat) 2/15/98
*
* For gcc/68K, 0 is clear, 1 is set.
*/
#define TSL_SET(tsl) ({ \
register tsl_t *__l = (tsl); \
int __r; \
asm volatile("tas %1; \n \
seq %0" \
: "=dm" (__r), "=m" (*__l) \
: "1" (*__l) \
); \
__r & 1; \
})
#define TSL_UNSET(tsl) (*(tsl) = 0)
#define TSL_INIT(tsl) TSL_UNSET(tsl)