1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
/* * @(#)68020.gcc 10.1 (Sleepycat) 4/12/97 * * 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)