diff --git a/regressions/ck_spinlock/ck_hclh.h b/regressions/ck_spinlock/ck_hclh.h index b473605..1dfddbd 100644 --- a/regressions/ck_spinlock/ck_hclh.h +++ b/regressions/ck_spinlock/ck_hclh.h @@ -1,12 +1,14 @@ #define MAX(a,b) ((a) > (b) ? (a) : (b)) -#define LOCK_NAME "ck_clh" -#define LOCK_DEFINE static ck_spinlock_hclh_t CK_CC_CACHELINE *glob_lock; \ - static ck_spinlock_hclh_t CK_CC_CACHELINE *local_lock[CORES / 2] + #if CORES < 2 #undef CORES #define CORES 2 #endif +#define LOCK_NAME "ck_clh" +#define LOCK_DEFINE static ck_spinlock_hclh_t CK_CC_CACHELINE *glob_lock; \ + static ck_spinlock_hclh_t CK_CC_CACHELINE *local_lock[CORES / 2] + #define LOCK_STATE ck_spinlock_hclh_t *na = malloc(MAX(sizeof(ck_spinlock_hclh_t), 64)) #define LOCK ck_spinlock_hclh_lock(&glob_lock, &local_lock[(core % CORES) / 2], na) #define UNLOCK ck_spinlock_hclh_unlock(&na)