#define TRUE_VAL (!0)
#define FALSE_VAL 0
#define ARR_SIZE(arr) (sizeof(arr)/sizeof(arr[0]))
typedef unsigned long long int uint64_t;
typedef long long int int64_t;
/* ~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~-~- */
struct harness_int64_pred {
const char *fmt_string;
int64_t *lhs;
int64_t *rhs;
int64_t *select_a;
int64_t *select_b;
int expected;
int64_t *select_expected;
};
struct harness_uint64_pred {
const char *fmt_string;
uint64_t *lhs;
uint64_t *rhs;
uint64_t *select_a;
uint64_t *select_b;
int expected;
uint64_t *select_expected;
};
struct int64_pred_s {
const char *name;
int (*predfunc) (int64_t, int64_t);
int64_t (*selfunc) (int64_t, int64_t, int64_t, int64_t);
struct harness_int64_pred *tests;
int n_tests;
};
struct uint64_pred_s {
const char *name;
int (*predfunc) (uint64_t, uint64_t);
uint64_t (*selfunc) (uint64_t, uint64_t, uint64_t, uint64_t);
struct harness_uint64_pred *tests;
int n_tests;
};