-#define CHECK(fail, expected, result, _fmt, _args...) \
- if (expected != result) \
- ECHO_FAIL (fail, "expected %d, got %d : " _fmt, expected, \
- result, ##_args); \
+#define CHECK_SAME(fail, expected, result, _fmt, _args...) \
+do { \
+ if ((expected) != (result)) \
+ ECHO_FAIL ((fail), "expected same (%lld, got %lld) : "_fmt, \
+ (u64)(expected), (u64)(result), ##_args); \
+} while (0)
+
+#define CHECK_DIFF(fail, expected, result, _fmt, _args...) \
+do { \
+ if ((expected) == (result)) \
+ ECHO_FAIL ((fail), "expected different (both %lld) : "_fmt, \
+ (u64)(expected), ##_args); \
+} while (0)