Lines Matching refs:WIDTH
68 #define NAME_oldval(OP, WIDTH) __sync_fetch_and_##OP##_##WIDTH
69 #define NAME_newval(OP, WIDTH) __sync_##OP##_and_fetch_##WIDTH
86 #define SUBWORD_SYNC_OP(OP, PFX_OP, INF_OP, TYPE, WIDTH, RETURN) \
88 NAME##_##RETURN (OP, WIDTH) (TYPE *ptr, TYPE sval) \
93 shift = (((unsigned long) ptr & 3) << 3) ^ INVERT_MASK_##WIDTH; \
94 mask = MASK_##WIDTH << shift; \
95 wval = (sval & MASK_##WIDTH) << shift; \
105 return (RETURN >> shift) & MASK_##WIDTH; \
163 #define SUBWORD_VAL_CAS(TYPE, WIDTH) \
165 __sync_val_compare_and_swap_##WIDTH (TYPE *ptr, TYPE soldval, \
172 shift = (((unsigned long) ptr & 3) << 3) ^ INVERT_MASK_##WIDTH; \
173 mask = MASK_##WIDTH << shift; \
174 woldval = (soldval & MASK_##WIDTH) << shift; \
175 wnewval = (snewval & MASK_##WIDTH) << shift; \
186 return (oldval >> shift) & MASK_##WIDTH; \
192 #define SUBWORD_BOOL_CAS(TYPE, WIDTH) \
194 __sync_bool_compare_and_swap_##WIDTH (TYPE *ptr, TYPE oldval, \
197 return (__sync_val_compare_and_swap_##WIDTH (ptr, oldval, newval) \
205 #define NAME_oldval(OP, WIDTH) __sync_lock_##OP##_##WIDTH