28 #ifndef THE_T_TEST_FRAMEWORK_H 29 #define THE_T_TEST_FRAMEWORK_H 38 #include <rtems/score/cpu.h> 62 void (*setup)(
void *);
64 void (*teardown)(
void *);
65 void *initial_context;
68 #define T_ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0])) 75 #define T_FILE_NAME __FILE__ 99 #define T_CHECK_STOP 1U 101 #define T_CHECK_QUIET 2U 103 #define T_CHECK_STEP_FLAG 4U 105 #define T_CHECK_STEP_TO_FLAGS(step) ((unsigned int)(step) << 8) 107 #define T_CHECK_STEP_FROM_FLAGS(flags) ((flags) >> 8) 109 #define T_CHECK_STEP(step) (T_CHECK_STEP_TO_FLAGS(step) | T_CHECK_STEP_FLAG) 124 #define T_flags_true(a, flags, ...) \ 126 static const T_check_context T_check_instance = { \ 127 T_FILE_NAME, __LINE__, flags }; \ 128 T_check_true(a, &T_check_instance, __VA_ARGS__); \ 131 #define T_flags_eq(a, e, flags, ...) \ 132 T_flags_true((a) == (e), flags, __VA_ARGS__) 134 #define T_flags_ne(a, e, flags, ...) \ 135 T_flags_true((a) != (e), flags, __VA_ARGS__) 139 #define T_flags_eq_ptr(a, e, flags, sa, se) \ 141 static const T_check_context_msg T_check_instance = { \ 142 { T_FILE_NAME, __LINE__, flags }, sa " == " se }; \ 143 T_check_eq_ptr(a, &T_check_instance, e); \ 148 #define T_flags_ne_ptr(a, e, flags, sa, se) \ 150 static const T_check_context_msg T_check_instance = { \ 151 { T_FILE_NAME, __LINE__, flags }, sa " != " se }; \ 152 T_check_ne_ptr(a, &T_check_instance, e); \ 157 #define T_flags_null(a, flags, sa) \ 159 static const T_check_context_msg T_check_instance = { \ 160 { T_FILE_NAME, __LINE__, flags }, sa }; \ 161 T_check_null(a, &T_check_instance); \ 166 #define T_flags_not_null(a, flags, sa) \ 168 static const T_check_context_msg T_check_instance = { \ 169 { T_FILE_NAME, __LINE__, flags }, sa }; \ 170 T_check_not_null(a, &T_check_instance); \ 176 #define T_flags_eq_mem(a, e, n, flags, sa, se, sn) \ 178 static const T_check_context_msg T_check_instance = { \ 179 { T_FILE_NAME, __LINE__, flags }, \ 180 "memcmp(" sa ", " se ", " sn ") == 0" }; \ 181 T_check_eq_mem(a, &T_check_instance, e, n); \ 187 #define T_flags_ne_mem(a, e, n, flags, sa, se, sn) \ 189 static const T_check_context_msg T_check_instance = { \ 190 { T_FILE_NAME, __LINE__, flags }, \ 191 "memcmp(" sa ", " se ", " sn ") != 0" }; \ 192 T_check_ne_mem(a, &T_check_instance, e, n); \ 195 void T_check_eq_str(
const char *,
const T_check_context *,
const char *);
197 #define T_flags_eq_str(a, e, flags) \ 199 static const T_check_context T_check_instance = { \ 200 T_FILE_NAME, __LINE__, flags }; \ 201 T_check_eq_str(a, &T_check_instance, e); \ 204 void T_check_ne_str(
const char *,
const T_check_context *,
const char *);
206 #define T_flags_ne_str(a, e, flags) \ 208 static const T_check_context T_check_instance = { \ 209 T_FILE_NAME, __LINE__, flags }; \ 210 T_check_ne_str(a, &T_check_instance, e); \ 213 void T_check_eq_nstr(
const char *,
const T_check_context *,
const char *,
216 #define T_flags_eq_nstr(a, e, n, flags) \ 218 static const T_check_context T_check_instance = { \ 219 T_FILE_NAME, __LINE__, flags }; \ 220 T_check_eq_nstr(a, &T_check_instance, e, n); \ 223 void T_check_ne_nstr(
const char *,
const T_check_context *,
const char *,
226 #define T_flags_ne_nstr(a, e, n, flags) \ 228 static const T_check_context T_check_instance = { \ 229 T_FILE_NAME, __LINE__, flags }; \ 230 T_check_ne_nstr(a, &T_check_instance, e, n); \ 235 #define T_flags_eq_char(a, e, flags) \ 237 static const T_check_context T_check_instance = { \ 238 T_FILE_NAME, __LINE__, flags }; \ 239 T_check_eq_char(a, &T_check_instance, e); \ 244 #define T_flags_ne_char(a, e, flags) \ 246 static const T_check_context T_check_instance = { \ 247 T_FILE_NAME, __LINE__, flags }; \ 248 T_check_ne_char(a, &T_check_instance, e); \ 253 #define T_flags_eq_int(a, e, flags) \ 255 static const T_check_context T_check_instance = { \ 256 T_FILE_NAME, __LINE__, flags }; \ 257 T_check_eq_int(a, &T_check_instance, e); \ 262 #define T_flags_ne_int(a, e, flags) \ 264 static const T_check_context T_check_instance = { \ 265 T_FILE_NAME, __LINE__, flags }; \ 266 T_check_ne_int(a, &T_check_instance, e); \ 271 #define T_flags_ge_int(a, e, flags) \ 273 static const T_check_context T_check_instance = { \ 274 T_FILE_NAME, __LINE__, flags }; \ 275 T_check_ge_int(a, &T_check_instance, e); \ 280 #define T_flags_gt_int(a, e, flags) \ 282 static const T_check_context T_check_instance = { \ 283 T_FILE_NAME, __LINE__, flags }; \ 284 T_check_gt_int(a, &T_check_instance, e); \ 289 #define T_flags_le_int(a, e, flags) \ 291 static const T_check_context T_check_instance = { \ 292 T_FILE_NAME, __LINE__, flags }; \ 293 T_check_le_int(a, &T_check_instance, e); \ 298 #define T_flags_lt_int(a, e, flags) \ 300 static const T_check_context T_check_instance = { \ 301 T_FILE_NAME, __LINE__, flags }; \ 302 T_check_lt_int(a, &T_check_instance, e); \ 305 void T_check_eq_uint(
unsigned int,
const T_check_context *,
unsigned int);
307 #define T_flags_eq_uint(a, e, flags) \ 309 static const T_check_context T_check_instance = { \ 310 T_FILE_NAME, __LINE__, flags }; \ 311 T_check_eq_uint(a, &T_check_instance, e); \ 314 void T_check_ne_uint(
unsigned int,
const T_check_context *,
unsigned int);
316 #define T_flags_ne_uint(a, e, flags) \ 318 static const T_check_context T_check_instance = { \ 319 T_FILE_NAME, __LINE__, flags }; \ 320 T_check_ne_uint(a, &T_check_instance, e); \ 323 void T_check_ge_uint(
unsigned int,
const T_check_context *,
unsigned int);
325 #define T_flags_ge_uint(a, e, flags) \ 327 static const T_check_context T_check_instance = { \ 328 T_FILE_NAME, __LINE__, flags }; \ 329 T_check_ge_uint(a, &T_check_instance, e); \ 332 void T_check_gt_uint(
unsigned int,
const T_check_context *,
unsigned int);
334 #define T_flags_gt_uint(a, e, flags) \ 336 static const T_check_context T_check_instance = { \ 337 T_FILE_NAME, __LINE__, flags }; \ 338 T_check_gt_uint(a, &T_check_instance, e); \ 341 void T_check_le_uint(
unsigned int,
const T_check_context *,
unsigned int);
343 #define T_flags_le_uint(a, e, flags) \ 345 static const T_check_context T_check_instance = { \ 346 T_FILE_NAME, __LINE__, flags }; \ 347 T_check_le_uint(a, &T_check_instance, e); \ 350 void T_check_lt_uint(
unsigned int,
const T_check_context *,
unsigned int);
352 #define T_flags_lt_uint(a, e, flags) \ 354 static const T_check_context T_check_instance = { \ 355 T_FILE_NAME, __LINE__, flags }; \ 356 T_check_lt_uint(a, &T_check_instance, e); \ 361 #define T_flags_eq_long(a, e, flags) \ 363 static const T_check_context T_check_instance = { \ 364 T_FILE_NAME, __LINE__, flags }; \ 365 T_check_eq_long(a, &T_check_instance, e); \ 370 #define T_flags_ne_long(a, e, flags) \ 372 static const T_check_context T_check_instance = { \ 373 T_FILE_NAME, __LINE__, flags }; \ 374 T_check_ne_long(a, &T_check_instance, e); \ 379 #define T_flags_ge_long(a, e, flags) \ 381 static const T_check_context T_check_instance = { \ 382 T_FILE_NAME, __LINE__, flags }; \ 383 T_check_ge_long(a, &T_check_instance, e); \ 388 #define T_flags_gt_long(a, e, flags) \ 390 static const T_check_context T_check_instance = { \ 391 T_FILE_NAME, __LINE__, flags }; \ 392 T_check_gt_long(a, &T_check_instance, e); \ 397 #define T_flags_le_long(a, e, flags) \ 399 static const T_check_context T_check_instance = { \ 400 T_FILE_NAME, __LINE__, flags }; \ 401 T_check_le_long(a, &T_check_instance, e); \ 406 #define T_flags_lt_long(a, e, flags) \ 408 static const T_check_context T_check_instance = { \ 409 T_FILE_NAME, __LINE__, flags }; \ 410 T_check_lt_long(a, &T_check_instance, e); \ 413 void T_check_eq_ulong(
unsigned long,
const T_check_context *,
unsigned long);
415 #define T_flags_eq_ulong(a, e, flags) \ 417 static const T_check_context T_check_instance = { \ 418 T_FILE_NAME, __LINE__, flags }; \ 419 T_check_eq_ulong(a, &T_check_instance, e); \ 422 void T_check_ne_ulong(
unsigned long,
const T_check_context *,
unsigned long);
424 #define T_flags_ne_ulong(a, e, flags) \ 426 static const T_check_context T_check_instance = { \ 427 T_FILE_NAME, __LINE__, flags }; \ 428 T_check_ne_ulong(a, &T_check_instance, e); \ 431 void T_check_ge_ulong(
unsigned long,
const T_check_context *,
unsigned long);
433 #define T_flags_ge_ulong(a, e, flags) \ 435 static const T_check_context T_check_instance = { \ 436 T_FILE_NAME, __LINE__, flags }; \ 437 T_check_ge_ulong(a, &T_check_instance, e); \ 440 void T_check_gt_ulong(
unsigned long,
const T_check_context *,
unsigned long);
442 #define T_flags_gt_ulong(a, e, flags) \ 444 static const T_check_context T_check_instance = { \ 445 T_FILE_NAME, __LINE__, flags }; \ 446 T_check_gt_ulong(a, &T_check_instance, e); \ 449 void T_check_le_ulong(
unsigned long,
const T_check_context *,
unsigned long);
451 #define T_flags_le_ulong(a, e, flags) \ 453 static const T_check_context T_check_instance = { \ 454 T_FILE_NAME, __LINE__, flags }; \ 455 T_check_le_ulong(a, &T_check_instance, e); \ 458 void T_check_lt_ulong(
unsigned long,
const T_check_context *,
unsigned long);
460 #define T_flags_lt_ulong(a, e, flags) \ 462 static const T_check_context T_check_instance = { \ 463 T_FILE_NAME, __LINE__, flags }; \ 464 T_check_lt_ulong(a, &T_check_instance, e); \ 469 #define T_flags_eq_ll(a, e, flags) \ 471 static const T_check_context T_check_instance = { \ 472 T_FILE_NAME, __LINE__, flags }; \ 473 T_check_eq_ll(a, &T_check_instance, e); \ 478 #define T_flags_ne_ll(a, e, flags) \ 480 static const T_check_context T_check_instance = { \ 481 T_FILE_NAME, __LINE__, flags }; \ 482 T_check_ne_ll(a, &T_check_instance, e); \ 487 #define T_flags_ge_ll(a, e, flags) \ 489 static const T_check_context T_check_instance = { \ 490 T_FILE_NAME, __LINE__, flags }; \ 491 T_check_ge_ll(a, &T_check_instance, e); \ 496 #define T_flags_gt_ll(a, e, flags) \ 498 static const T_check_context T_check_instance = { \ 499 T_FILE_NAME, __LINE__, flags }; \ 500 T_check_gt_ll(a, &T_check_instance, e); \ 505 #define T_flags_le_ll(a, e, flags) \ 507 static const T_check_context T_check_instance = { \ 508 T_FILE_NAME, __LINE__, flags }; \ 509 T_check_le_ll(a, &T_check_instance, e); \ 514 #define T_flags_lt_ll(a, e, flags) \ 516 static const T_check_context T_check_instance = { \ 517 T_FILE_NAME, __LINE__, flags }; \ 518 T_check_lt_ll(a, &T_check_instance, e); \ 524 #define T_flags_eq_ull(a, e, flags) \ 526 static const T_check_context T_check_instance = { \ 527 T_FILE_NAME, __LINE__, flags }; \ 528 T_check_eq_ull(a, &T_check_instance, e); \ 534 #define T_flags_ne_ull(a, e, flags) \ 536 static const T_check_context T_check_instance = { \ 537 T_FILE_NAME, __LINE__, flags }; \ 538 T_check_ne_ull(a, &T_check_instance, e); \ 544 #define T_flags_ge_ull(a, e, flags) \ 546 static const T_check_context T_check_instance = { \ 547 T_FILE_NAME, __LINE__, flags }; \ 548 T_check_ge_ull(a, &T_check_instance, e); \ 554 #define T_flags_gt_ull(a, e, flags) \ 556 static const T_check_context T_check_instance = { \ 557 T_FILE_NAME, __LINE__, flags }; \ 558 T_check_gt_ull(a, &T_check_instance, e); \ 564 #define T_flags_le_ull(a, e, flags) \ 566 static const T_check_context T_check_instance = { \ 567 T_FILE_NAME, __LINE__, flags }; \ 568 T_check_le_ull(a, &T_check_instance, e); \ 574 #define T_flags_lt_ull(a, e, flags) \ 576 static const T_check_context T_check_instance = { \ 577 T_FILE_NAME, __LINE__, flags }; \ 578 T_check_lt_ull(a, &T_check_instance, e); \ 583 #define T_flags_eno(a, e, flags) \ 585 static const T_check_context T_check_instance = { \ 586 T_FILE_NAME, __LINE__, flags }; \ 587 T_check_eno(a, &T_check_instance, e); \ 592 #define T_flags_eno_success(a, flags) \ 594 static const T_check_context T_check_instance = { \ 595 T_FILE_NAME, __LINE__, flags }; \ 596 T_check_eno_success(a, &T_check_instance); \ 601 #define T_flags_psx_error(a, eno, flags) \ 603 static const T_check_context T_check_instance = { \ 604 T_FILE_NAME, __LINE__, flags }; \ 605 T_check_psx_error(a, &T_check_instance, eno); \ 610 #define T_flags_psx_success(a, flags) \ 612 static const T_check_context T_check_instance = { \ 613 T_FILE_NAME, __LINE__, flags }; \ 614 T_check_psx_success(a, &T_check_instance); \ 619 int T_printf(
char const *, ...);
621 int T_vprintf(
char const *, va_list);
623 int T_snprintf(
char *,
size_t,
const char *, ...);
625 void T_log(T_verbosity,
char const *, ...);
627 const char *T_case_name(
void);
629 T_verbosity T_set_verbosity(T_verbosity);
641 #define T_true(a, ...) T_flags_true(a, 0, __VA_ARGS__) 642 #define T_assert_true(a, ...) T_flags_true(a, T_CHECK_STOP, __VA_ARGS__) 643 #define T_quiet_true(a, ...) T_flags_true(a, T_CHECK_QUIET, __VA_ARGS__) 644 #define T_step_true(s, a, ...) T_flags_true(a, T_CHECK_STEP(s), __VA_ARGS__) 645 #define T_step_assert_true(s, a, ...) \ 646 T_flags_true(a, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 648 #define T_false(a, ...) T_flags_true(!(a), 0, __VA_ARGS__) 649 #define T_assert_false(a, ...) T_flags_true(!(a), T_CHECK_STOP, __VA_ARGS__) 650 #define T_quiet_false(a, ...) T_flags_true(!(a), T_CHECK_QUIET, __VA_ARGS__) 651 #define T_step_false(s, a, ...) T_flags_true(!(a), T_CHECK_STEP(s), __VA_ARGS__) 652 #define T_step_assert_false(s, a, ...) \ 653 T_flags_true(!(a), T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 667 #define T_eq(a, e, ...) T_flags_eq(a, e, 0, __VA_ARGS__) 668 #define T_assert_eq(a, e, ...) T_flags_eq(a, e, T_CHECK_STOP, __VA_ARGS__) 669 #define T_quiet_eq(a, e, ...) T_flags_eq(a, e, T_CHECK_QUIET, __VA_ARGS__) 670 #define T_step_eq(s, a, e, ...) T_flags_eq(a, e, T_CHECK_STEP(s), __VA_ARGS__) 671 #define T_step_assert_eq(s, a, e, ...) \ 672 T_flags_eq(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 674 #define T_ne(a, e, ...) T_flags_ne(a, e, 0, __VA_ARGS__) 675 #define T_assert_ne(a, e, ...) T_flags_ne(a, e, T_CHECK_STOP, __VA_ARGS__) 676 #define T_quiet_ne(a, e, ...) T_flags_ne(a, e, T_CHECK_QUIET, __VA_ARGS__) 677 #define T_step_ne(s, a, e, ...) T_flags_ne(a, e, T_CHECK_STEP(s), __VA_ARGS__) 678 #define T_step_assert_ne(s, a, e, ...) \ 679 T_flags_ne(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 693 #define T_eq_ptr(a, e) T_flags_eq_ptr(a, e, 0, #a, #e) 694 #define T_assert_eq_ptr(a, e) T_flags_eq_ptr(a, e, T_CHECK_STOP, #a, #e) 695 #define T_quiet_eq_ptr(a, e) T_flags_eq_ptr(a, e, T_CHECK_QUIET, #a, #e) 696 #define T_step_eq_ptr(s, a, e) T_flags_eq_ptr(a, e, T_CHECK_STEP(s), #a, #e) 697 #define T_step_assert_eq_ptr(s, a, e) \ 698 T_flags_eq_ptr(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e) 700 #define T_ne_ptr(a, e) T_flags_ne_ptr(a, e, 0, #a, #e) 701 #define T_assert_ne_ptr(a, e) T_flags_ne_ptr(a, e, T_CHECK_STOP, #a, #e) 702 #define T_quiet_ne_ptr(a, e) T_flags_ne_ptr(a, e, T_CHECK_QUIET, #a, #e) 703 #define T_step_ne_ptr(s, a, e) T_flags_ne_ptr(a, e, T_CHECK_STEP(s), #a, #e) 704 #define T_step_assert_ne_ptr(s, a, e) \ 705 T_flags_ne_ptr(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e) 707 #define T_null(a) T_flags_null(a, 0, #a) 708 #define T_assert_null(a) T_flags_null(a, T_CHECK_STOP, #a) 709 #define T_quiet_null(a) T_flags_null(a, T_CHECK_QUIET, #a) 710 #define T_step_null(s, a) T_flags_null(a, T_CHECK_STEP(s), #a) 711 #define T_step_assert_null(s, a) \ 712 T_flags_null(a, T_CHECK_STEP(s) | T_CHECK_STOP, #a) 714 #define T_not_null(a) T_flags_not_null(a, 0, #a) 715 #define T_assert_not_null(a) T_flags_not_null(a, T_CHECK_STOP, #a) 716 #define T_quiet_not_null(a) T_flags_not_null(a, T_CHECK_QUIET, #a) 717 #define T_step_not_null(s, a) T_flags_not_null(a, T_CHECK_STEP(s), #a) 718 #define T_step_assert_not_null(s, a) \ 719 T_flags_not_null(a, T_CHECK_STEP(s) | T_CHECK_STOP, #a) 733 #define T_eq_mem(a, e, n) T_flags_eq_mem(a, e, n, 0, #a, #e, #n) 734 #define T_assert_eq_mem(a, e, n) \ 735 T_flags_eq_mem(a, e, n, T_CHECK_STOP, #a, #e, #n) 736 #define T_quiet_eq_mem(a, e, n) \ 737 T_flags_eq_mem(a, e, n, T_CHECK_QUIET, #a, #e, #n) 738 #define T_step_eq_mem(s, a, e, n) \ 739 T_flags_eq_mem(a, e, n, T_CHECK_STEP(s), #a, #e, #n) 740 #define T_step_assert_eq_mem(s, a, e, n) \ 741 T_flags_eq_mem(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e, #n) 743 #define T_ne_mem(a, e, n) T_flags_ne_mem(a, e, n, 0, #a, #e, #n) 744 #define T_assert_ne_mem(a, e, n) \ 745 T_flags_ne_mem(a, e, n, T_CHECK_STOP, #a, #e, #n) 746 #define T_quiet_ne_mem(a, e, n) \ 747 T_flags_ne_mem(a, e, n, T_CHECK_QUIET, #a, #e, #n) 748 #define T_step_ne_mem(s, a, e, n) \ 749 T_flags_ne_mem(a, e, n, T_CHECK_STEP(s), #a, #e, #n) 750 #define T_step_assert_ne_mem(s, a, e, n) \ 751 T_flags_ne_mem(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e, #n) 766 #define T_eq_str(a, e) T_flags_eq_str(a, e, 0) 767 #define T_assert_eq_str(a, e) T_flags_eq_str(a, e, T_CHECK_STOP) 768 #define T_quiet_eq_str(a, e) T_flags_eq_str(a, e, T_CHECK_QUIET) 769 #define T_step_eq_str(s, a, e) T_flags_eq_str(a, e, T_CHECK_STEP(s)) 770 #define T_step_assert_eq_str(s, a, e) \ 771 T_flags_eq_str(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 773 #define T_ne_str(a, e) T_flags_ne_str(a, e, 0) 774 #define T_assert_ne_str(a, e) T_flags_ne_str(a, e, T_CHECK_STOP) 775 #define T_quiet_ne_str(a, e) T_flags_ne_str(a, e, T_CHECK_QUIET) 776 #define T_step_ne_str(s, a, e) T_flags_ne_str(a, e, T_CHECK_STEP(s)) 777 #define T_step_assert_ne_str(s, a, e) \ 778 T_flags_ne_str(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 780 #define T_eq_nstr(a, e, n) T_flags_eq_nstr(a, e, n, 0) 781 #define T_assert_eq_nstr(a, e, n) T_flags_eq_nstr(a, e, n, T_CHECK_STOP) 782 #define T_quiet_eq_nstr(a, e, n) T_flags_eq_nstr(a, e, n, T_CHECK_QUIET) 783 #define T_step_eq_nstr(s, a, e, n) T_flags_eq_nstr(a, e, n, T_CHECK_STEP(s)) 784 #define T_step_assert_eq_nstr(s, a, e, n) \ 785 T_flags_eq_nstr(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP) 787 #define T_ne_nstr(a, e, n) T_flags_ne_nstr(a, e, n, 0) 788 #define T_assert_ne_nstr(a, e, n) T_flags_ne_nstr(a, e, n, T_CHECK_STOP) 789 #define T_quiet_ne_nstr(a, e, n) T_flags_ne_nstr(a, e, n, T_CHECK_QUIET) 790 #define T_step_ne_nstr(s, a, e, n) T_flags_ne_nstr(a, e, n, T_CHECK_STEP(s)) 791 #define T_step_assert_ne_nstr(s, a, e, n) \ 792 T_flags_ne_nstr(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP) 806 #define T_eq_char(a, e) T_flags_eq_char(a, e, 0) 807 #define T_assert_eq_char(a, e) T_flags_eq_char(a, e, T_CHECK_STOP) 808 #define T_quiet_eq_char(a, e) T_flags_eq_char(a, e, T_CHECK_QUIET) 809 #define T_step_eq_char(s, a, e) T_flags_eq_char(a, e, T_CHECK_STEP(s)) 810 #define T_step_assert_eq_char(s, a, e) \ 811 T_flags_eq_char(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 813 #define T_ne_char(a, e) T_flags_ne_char(a, e, 0) 814 #define T_assert_ne_char(a, e) T_flags_ne_char(a, e, T_CHECK_STOP) 815 #define T_quiet_ne_char(a, e) T_flags_ne_char(a, e, T_CHECK_QUIET) 816 #define T_step_ne_char(s, a, e) T_flags_ne_char(a, e, T_CHECK_STEP(s)) 817 #define T_step_assert_ne_char(s, a, e) \ 818 T_flags_ne_char(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 832 #define T_eq_schar(a, e) T_flags_eq_int(a, e, 0) 833 #define T_assert_eq_schar(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 834 #define T_quiet_eq_schar(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 835 #define T_step_eq_schar(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 836 #define T_step_assert_eq_schar(s, a, e) \ 837 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 839 #define T_ne_schar(a, e) T_flags_ne_int(a, e, 0) 840 #define T_assert_ne_schar(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 841 #define T_quiet_ne_schar(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 842 #define T_step_ne_schar(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 843 #define T_step_assert_ne_schar(s, a, e) \ 844 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 846 #define T_ge_schar(a, e) T_flags_ge_int(a, e, 0) 847 #define T_assert_ge_schar(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 848 #define T_quiet_ge_schar(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 849 #define T_step_ge_schar(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 850 #define T_step_assert_ge_schar(s, a, e) \ 851 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 853 #define T_gt_schar(a, e) T_flags_gt_int(a, e, 0) 854 #define T_assert_gt_schar(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 855 #define T_quiet_gt_schar(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 856 #define T_step_gt_schar(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 857 #define T_step_assert_gt_schar(s, a, e) \ 858 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 860 #define T_le_schar(a, e) T_flags_le_int(a, e, 0) 861 #define T_assert_le_schar(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 862 #define T_quiet_le_schar(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 863 #define T_step_le_schar(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 864 #define T_step_assert_le_schar(s, a, e) \ 865 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 867 #define T_lt_schar(a, e) T_flags_lt_int(a, e, 0) 868 #define T_assert_lt_schar(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 869 #define T_quiet_lt_schar(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 870 #define T_step_lt_schar(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 871 #define T_step_assert_lt_schar(s, a, e) \ 872 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 886 #define T_eq_uchar(a, e) T_flags_eq_uint(a, e, 0) 887 #define T_assert_eq_uchar(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 888 #define T_quiet_eq_uchar(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 889 #define T_step_eq_uchar(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 890 #define T_step_assert_eq_uchar(s, a, e) \ 891 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 893 #define T_ne_uchar(a, e) T_flags_ne_uint(a, e, 0) 894 #define T_assert_ne_uchar(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 895 #define T_quiet_ne_uchar(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 896 #define T_step_ne_uchar(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 897 #define T_step_assert_ne_uchar(s, a, e) \ 898 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 900 #define T_ge_uchar(a, e) T_flags_ge_uint(a, e, 0) 901 #define T_assert_ge_uchar(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 902 #define T_quiet_ge_uchar(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 903 #define T_step_ge_uchar(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 904 #define T_step_assert_ge_uchar(s, a, e) \ 905 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 907 #define T_gt_uchar(a, e) T_flags_gt_uint(a, e, 0) 908 #define T_assert_gt_uchar(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 909 #define T_quiet_gt_uchar(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 910 #define T_step_gt_uchar(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 911 #define T_step_assert_gt_uchar(s, a, e) \ 912 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 914 #define T_le_uchar(a, e) T_flags_le_uint(a, e, 0) 915 #define T_assert_le_uchar(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 916 #define T_quiet_le_uchar(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 917 #define T_step_le_uchar(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 918 #define T_step_assert_le_uchar(s, a, e) \ 919 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 921 #define T_lt_uchar(a, e) T_flags_lt_uint(a, e, 0) 922 #define T_assert_lt_uchar(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 923 #define T_quiet_lt_uchar(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 924 #define T_step_lt_uchar(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 925 #define T_step_assert_lt_uchar(s, a, e) \ 926 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 940 #define T_eq_short(a, e) T_flags_eq_int(a, e, 0) 941 #define T_assert_eq_short(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 942 #define T_quiet_eq_short(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 943 #define T_step_eq_short(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 944 #define T_step_assert_eq_short(s, a, e) \ 945 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 947 #define T_ne_short(a, e) T_flags_ne_int(a, e, 0) 948 #define T_assert_ne_short(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 949 #define T_quiet_ne_short(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 950 #define T_step_ne_short(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 951 #define T_step_assert_ne_short(s, a, e) \ 952 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 954 #define T_ge_short(a, e) T_flags_ge_int(a, e, 0) 955 #define T_assert_ge_short(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 956 #define T_quiet_ge_short(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 957 #define T_step_ge_short(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 958 #define T_step_assert_ge_short(s, a, e) \ 959 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 961 #define T_gt_short(a, e) T_flags_gt_int(a, e, 0) 962 #define T_assert_gt_short(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 963 #define T_quiet_gt_short(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 964 #define T_step_gt_short(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 965 #define T_step_assert_gt_short(s, a, e) \ 966 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 968 #define T_le_short(a, e) T_flags_le_int(a, e, 0) 969 #define T_assert_le_short(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 970 #define T_quiet_le_short(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 971 #define T_step_le_short(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 972 #define T_step_assert_le_short(s, a, e) \ 973 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 975 #define T_lt_short(a, e) T_flags_lt_int(a, e, 0) 976 #define T_assert_lt_short(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 977 #define T_quiet_lt_short(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 978 #define T_step_lt_short(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 979 #define T_step_assert_lt_short(s, a, e) \ 980 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 994 #define T_eq_ushort(a, e) T_flags_eq_uint(a, e, 0) 995 #define T_assert_eq_ushort(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 996 #define T_quiet_eq_ushort(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 997 #define T_step_eq_ushort(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 998 #define T_step_assert_eq_ushort(s, a, e) \ 999 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1001 #define T_ne_ushort(a, e) T_flags_ne_uint(a, e, 0) 1002 #define T_assert_ne_ushort(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1003 #define T_quiet_ne_ushort(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1004 #define T_step_ne_ushort(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1005 #define T_step_assert_ne_ushort(s, a, e) \ 1006 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1008 #define T_ge_ushort(a, e) T_flags_ge_uint(a, e, 0) 1009 #define T_assert_ge_ushort(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1010 #define T_quiet_ge_ushort(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1011 #define T_step_ge_ushort(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1012 #define T_step_assert_ge_ushort(s, a, e) \ 1013 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1015 #define T_gt_ushort(a, e) T_flags_gt_uint(a, e, 0) 1016 #define T_assert_gt_ushort(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1017 #define T_quiet_gt_ushort(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1018 #define T_step_gt_ushort(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1019 #define T_step_assert_gt_ushort(s, a, e) \ 1020 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1022 #define T_le_ushort(a, e) T_flags_le_uint(a, e, 0) 1023 #define T_assert_le_ushort(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1024 #define T_quiet_le_ushort(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1025 #define T_step_le_ushort(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1026 #define T_step_assert_le_ushort(s, a, e) \ 1027 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1029 #define T_lt_ushort(a, e) T_flags_lt_uint(a, e, 0) 1030 #define T_assert_lt_ushort(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1031 #define T_quiet_lt_ushort(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1032 #define T_step_lt_ushort(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1033 #define T_step_assert_lt_ushort(s, a, e) \ 1034 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1048 #define T_eq_int(a, e) T_flags_eq_int(a, e, 0) 1049 #define T_assert_eq_int(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 1050 #define T_quiet_eq_int(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 1051 #define T_step_eq_int(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 1052 #define T_step_assert_eq_int(s, a, e) \ 1053 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1055 #define T_ne_int(a, e) T_flags_ne_int(a, e, 0) 1056 #define T_assert_ne_int(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 1057 #define T_quiet_ne_int(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 1058 #define T_step_ne_int(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 1059 #define T_step_assert_ne_int(s, a, e) \ 1060 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1062 #define T_ge_int(a, e) T_flags_ge_int(a, e, 0) 1063 #define T_assert_ge_int(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 1064 #define T_quiet_ge_int(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 1065 #define T_step_ge_int(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 1066 #define T_step_assert_ge_int(s, a, e) \ 1067 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1069 #define T_gt_int(a, e) T_flags_gt_int(a, e, 0) 1070 #define T_assert_gt_int(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 1071 #define T_quiet_gt_int(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 1072 #define T_step_gt_int(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 1073 #define T_step_assert_gt_int(s, a, e) \ 1074 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1076 #define T_le_int(a, e) T_flags_le_int(a, e, 0) 1077 #define T_assert_le_int(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 1078 #define T_quiet_le_int(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 1079 #define T_step_le_int(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 1080 #define T_step_assert_le_int(s, a, e) \ 1081 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1083 #define T_lt_int(a, e) T_flags_lt_int(a, e, 0) 1084 #define T_assert_lt_int(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 1085 #define T_quiet_lt_int(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 1086 #define T_step_lt_int(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 1087 #define T_step_assert_lt_int(s, a, e) \ 1088 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1102 #define T_eq_uint(a, e) T_flags_eq_uint(a, e, 0) 1103 #define T_assert_eq_uint(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 1104 #define T_quiet_eq_uint(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 1105 #define T_step_eq_uint(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 1106 #define T_step_assert_eq_uint(s, a, e) \ 1107 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1109 #define T_ne_uint(a, e) T_flags_ne_uint(a, e, 0) 1110 #define T_assert_ne_uint(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1111 #define T_quiet_ne_uint(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1112 #define T_step_ne_uint(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1113 #define T_step_assert_ne_uint(s, a, e) \ 1114 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1116 #define T_ge_uint(a, e) T_flags_ge_uint(a, e, 0) 1117 #define T_assert_ge_uint(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1118 #define T_quiet_ge_uint(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1119 #define T_step_ge_uint(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1120 #define T_step_assert_ge_uint(s, a, e) \ 1121 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1123 #define T_gt_uint(a, e) T_flags_gt_uint(a, e, 0) 1124 #define T_assert_gt_uint(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1125 #define T_quiet_gt_uint(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1126 #define T_step_gt_uint(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1127 #define T_step_assert_gt_uint(s, a, e) \ 1128 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1130 #define T_le_uint(a, e) T_flags_le_uint(a, e, 0) 1131 #define T_assert_le_uint(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1132 #define T_quiet_le_uint(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1133 #define T_step_le_uint(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1134 #define T_step_assert_le_uint(s, a, e) \ 1135 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1137 #define T_lt_uint(a, e) T_flags_lt_uint(a, e, 0) 1138 #define T_assert_lt_uint(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1139 #define T_quiet_lt_uint(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1140 #define T_step_lt_uint(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1141 #define T_step_assert_lt_uint(s, a, e) \ 1142 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1156 #define T_eq_long(a, e) T_flags_eq_long(a, e, 0) 1157 #define T_assert_eq_long(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1158 #define T_quiet_eq_long(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1159 #define T_step_eq_long(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1160 #define T_step_assert_eq_long(s, a, e) \ 1161 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1163 #define T_ne_long(a, e) T_flags_ne_long(a, e, 0) 1164 #define T_assert_ne_long(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1165 #define T_quiet_ne_long(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1166 #define T_step_ne_long(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1167 #define T_step_assert_ne_long(s, a, e) \ 1168 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1170 #define T_ge_long(a, e) T_flags_ge_long(a, e, 0) 1171 #define T_assert_ge_long(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1172 #define T_quiet_ge_long(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1173 #define T_step_ge_long(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1174 #define T_step_assert_ge_long(s, a, e) \ 1175 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1177 #define T_gt_long(a, e) T_flags_gt_long(a, e, 0) 1178 #define T_assert_gt_long(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1179 #define T_quiet_gt_long(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1180 #define T_step_gt_long(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1181 #define T_step_assert_gt_long(s, a, e) \ 1182 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1184 #define T_le_long(a, e) T_flags_le_long(a, e, 0) 1185 #define T_assert_le_long(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1186 #define T_quiet_le_long(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1187 #define T_step_le_long(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1188 #define T_step_assert_le_long(s, a, e) \ 1189 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1191 #define T_lt_long(a, e) T_flags_lt_long(a, e, 0) 1192 #define T_assert_lt_long(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1193 #define T_quiet_lt_long(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1194 #define T_step_lt_long(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1195 #define T_step_assert_lt_long(s, a, e) \ 1196 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1210 #define T_eq_ulong(a, e) T_flags_eq_ulong(a, e, 0) 1211 #define T_assert_eq_ulong(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1212 #define T_quiet_eq_ulong(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1213 #define T_step_eq_ulong(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1214 #define T_step_assert_eq_ulong(s, a, e) \ 1215 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1217 #define T_ne_ulong(a, e) T_flags_ne_ulong(a, e, 0) 1218 #define T_assert_ne_ulong(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1219 #define T_quiet_ne_ulong(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1220 #define T_step_ne_ulong(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1221 #define T_step_assert_ne_ulong(s, a, e) \ 1222 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1224 #define T_ge_ulong(a, e) T_flags_ge_ulong(a, e, 0) 1225 #define T_assert_ge_ulong(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1226 #define T_quiet_ge_ulong(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1227 #define T_step_ge_ulong(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1228 #define T_step_assert_ge_ulong(s, a, e) \ 1229 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1231 #define T_gt_ulong(a, e) T_flags_gt_ulong(a, e, 0) 1232 #define T_assert_gt_ulong(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1233 #define T_quiet_gt_ulong(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1234 #define T_step_gt_ulong(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1235 #define T_step_assert_gt_ulong(s, a, e) \ 1236 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1238 #define T_le_ulong(a, e) T_flags_le_ulong(a, e, 0) 1239 #define T_assert_le_ulong(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1240 #define T_quiet_le_ulong(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1241 #define T_step_le_ulong(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1242 #define T_step_assert_le_ulong(s, a, e) \ 1243 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1245 #define T_lt_ulong(a, e) T_flags_lt_ulong(a, e, 0) 1246 #define T_assert_lt_ulong(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 1247 #define T_quiet_lt_ulong(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 1248 #define T_step_lt_ulong(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 1249 #define T_step_assert_lt_ulong(s, a, e) \ 1250 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1264 #define T_eq_ll(a, e) T_flags_eq_ll(a, e, 0) 1265 #define T_assert_eq_ll(a, e) T_flags_eq_ll(a, e, T_CHECK_STOP) 1266 #define T_quiet_eq_ll(a, e) T_flags_eq_ll(a, e, T_CHECK_QUIET) 1267 #define T_step_eq_ll(s, a, e) T_flags_eq_ll(a, e, T_CHECK_STEP(s)) 1268 #define T_step_assert_eq_ll(s, a, e) \ 1269 T_flags_eq_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1271 #define T_ne_ll(a, e) T_flags_ne_ll(a, e, 0) 1272 #define T_assert_ne_ll(a, e) T_flags_ne_ll(a, e, T_CHECK_STOP) 1273 #define T_quiet_ne_ll(a, e) T_flags_ne_ll(a, e, T_CHECK_QUIET) 1274 #define T_step_ne_ll(s, a, e) T_flags_ne_ll(a, e, T_CHECK_STEP(s)) 1275 #define T_step_assert_ne_ll(s, a, e) \ 1276 T_flags_ne_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1278 #define T_ge_ll(a, e) T_flags_ge_ll(a, e, 0) 1279 #define T_assert_ge_ll(a, e) T_flags_ge_ll(a, e, T_CHECK_STOP) 1280 #define T_quiet_ge_ll(a, e) T_flags_ge_ll(a, e, T_CHECK_QUIET) 1281 #define T_step_ge_ll(s, a, e) T_flags_ge_ll(a, e, T_CHECK_STEP(s)) 1282 #define T_step_assert_ge_ll(s, a, e) \ 1283 T_flags_ge_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1285 #define T_gt_ll(a, e) T_flags_gt_ll(a, e, 0) 1286 #define T_assert_gt_ll(a, e) T_flags_gt_ll(a, e, T_CHECK_STOP) 1287 #define T_quiet_gt_ll(a, e) T_flags_gt_ll(a, e, T_CHECK_QUIET) 1288 #define T_step_gt_ll(s, a, e) T_flags_gt_ll(a, e, T_CHECK_STEP(s)) 1289 #define T_step_assert_gt_ll(s, a, e) \ 1290 T_flags_gt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1292 #define T_le_ll(a, e) T_flags_le_ll(a, e, 0) 1293 #define T_assert_le_ll(a, e) T_flags_le_ll(a, e, T_CHECK_STOP) 1294 #define T_quiet_le_ll(a, e) T_flags_le_ll(a, e, T_CHECK_QUIET) 1295 #define T_step_le_ll(s, a, e) T_flags_le_ll(a, e, T_CHECK_STEP(s)) 1296 #define T_step_assert_le_ll(s, a, e) \ 1297 T_flags_le_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1299 #define T_lt_ll(a, e) T_flags_lt_ll(a, e, 0) 1300 #define T_assert_lt_ll(a, e) T_flags_lt_ll(a, e, T_CHECK_STOP) 1301 #define T_quiet_lt_ll(a, e) T_flags_lt_ll(a, e, T_CHECK_QUIET) 1302 #define T_step_lt_ll(s, a, e) T_flags_lt_ll(a, e, T_CHECK_STEP(s)) 1303 #define T_step_assert_lt_ll(s, a, e) \ 1304 T_flags_lt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1318 #define T_eq_ull(a, e) T_flags_eq_ull(a, e, 0) 1319 #define T_assert_eq_ull(a, e) T_flags_eq_ull(a, e, T_CHECK_STOP) 1320 #define T_quiet_eq_ull(a, e) T_flags_eq_ull(a, e, T_CHECK_QUIET) 1321 #define T_step_eq_ull(s, a, e) T_flags_eq_ull(a, e, T_CHECK_STEP(s)) 1322 #define T_step_assert_eq_ull(s, a, e) \ 1323 T_flags_eq_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1325 #define T_ne_ull(a, e) T_flags_ne_ull(a, e, 0) 1326 #define T_assert_ne_ull(a, e) T_flags_ne_ull(a, e, T_CHECK_STOP) 1327 #define T_quiet_ne_ull(a, e) T_flags_ne_ull(a, e, T_CHECK_QUIET) 1328 #define T_step_ne_ull(s, a, e) T_flags_ne_ull(a, e, T_CHECK_STEP(s)) 1329 #define T_step_assert_ne_ull(s, a, e) \ 1330 T_flags_ne_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1332 #define T_ge_ull(a, e) T_flags_ge_ull(a, e, 0) 1333 #define T_assert_ge_ull(a, e) T_flags_ge_ull(a, e, T_CHECK_STOP) 1334 #define T_quiet_ge_ull(a, e) T_flags_ge_ull(a, e, T_CHECK_QUIET) 1335 #define T_step_ge_ull(s, a, e) T_flags_ge_ull(a, e, T_CHECK_STEP(s)) 1336 #define T_step_assert_ge_ull(s, a, e) \ 1337 T_flags_ge_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1339 #define T_gt_ull(a, e) T_flags_gt_ull(a, e, 0) 1340 #define T_assert_gt_ull(a, e) T_flags_gt_ull(a, e, T_CHECK_STOP) 1341 #define T_quiet_gt_ull(a, e) T_flags_gt_ull(a, e, T_CHECK_QUIET) 1342 #define T_step_gt_ull(s, a, e) T_flags_gt_ull(a, e, T_CHECK_STEP(s)) 1343 #define T_step_assert_gt_ull(s, a, e) \ 1344 T_flags_gt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1346 #define T_le_ull(a, e) T_flags_le_ull(a, e, 0) 1347 #define T_assert_le_ull(a, e) T_flags_le_ull(a, e, T_CHECK_STOP) 1348 #define T_quiet_le_ull(a, e) T_flags_le_ull(a, e, T_CHECK_QUIET) 1349 #define T_step_le_ull(s, a, e) T_flags_le_ull(a, e, T_CHECK_STEP(s)) 1350 #define T_step_assert_le_ull(s, a, e) \ 1351 T_flags_le_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1353 #define T_lt_ull(a, e) T_flags_lt_ull(a, e, 0) 1354 #define T_assert_lt_ull(a, e) T_flags_lt_ull(a, e, T_CHECK_STOP) 1355 #define T_quiet_lt_ull(a, e) T_flags_lt_ull(a, e, T_CHECK_QUIET) 1356 #define T_step_lt_ull(s, a, e) T_flags_lt_ull(a, e, T_CHECK_STEP(s)) 1357 #define T_step_assert_lt_ull(s, a, e) \ 1358 T_flags_lt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1372 #define T_eq_i8(a, e) T_flags_eq_int(a, e, 0) 1373 #define T_assert_eq_i8(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 1374 #define T_quiet_eq_i8(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 1375 #define T_step_eq_i8(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 1376 #define T_step_assert_eq_i8(s, a, e) \ 1377 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1379 #define T_ne_i8(a, e) T_flags_ne_int(a, e, 0) 1380 #define T_assert_ne_i8(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 1381 #define T_quiet_ne_i8(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 1382 #define T_step_ne_i8(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 1383 #define T_step_assert_ne_i8(s, a, e) \ 1384 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1386 #define T_ge_i8(a, e) T_flags_ge_int(a, e, 0) 1387 #define T_assert_ge_i8(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 1388 #define T_quiet_ge_i8(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 1389 #define T_step_ge_i8(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 1390 #define T_step_assert_ge_i8(s, a, e) \ 1391 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1393 #define T_gt_i8(a, e) T_flags_gt_int(a, e, 0) 1394 #define T_assert_gt_i8(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 1395 #define T_quiet_gt_i8(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 1396 #define T_step_gt_i8(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 1397 #define T_step_assert_gt_i8(s, a, e) \ 1398 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1400 #define T_le_i8(a, e) T_flags_le_int(a, e, 0) 1401 #define T_assert_le_i8(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 1402 #define T_quiet_le_i8(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 1403 #define T_step_le_i8(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 1404 #define T_step_assert_le_i8(s, a, e) \ 1405 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1407 #define T_lt_i8(a, e) T_flags_lt_int(a, e, 0) 1408 #define T_assert_lt_i8(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 1409 #define T_quiet_lt_i8(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 1410 #define T_step_lt_i8(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 1411 #define T_step_assert_lt_i8(s, a, e) \ 1412 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1426 #define T_eq_u8(a, e) T_flags_eq_uint(a, e, 0) 1427 #define T_assert_eq_u8(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 1428 #define T_quiet_eq_u8(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 1429 #define T_step_eq_u8(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 1430 #define T_step_assert_eq_u8(s, a, e) \ 1431 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1433 #define T_ne_u8(a, e) T_flags_ne_uint(a, e, 0) 1434 #define T_assert_ne_u8(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1435 #define T_quiet_ne_u8(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1436 #define T_step_ne_u8(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1437 #define T_step_assert_ne_u8(s, a, e) \ 1438 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1440 #define T_ge_u8(a, e) T_flags_ge_uint(a, e, 0) 1441 #define T_assert_ge_u8(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1442 #define T_quiet_ge_u8(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1443 #define T_step_ge_u8(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1444 #define T_step_assert_ge_u8(s, a, e) \ 1445 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1447 #define T_gt_u8(a, e) T_flags_gt_uint(a, e, 0) 1448 #define T_assert_gt_u8(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1449 #define T_quiet_gt_u8(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1450 #define T_step_gt_u8(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1451 #define T_step_assert_gt_u8(s, a, e) \ 1452 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1454 #define T_le_u8(a, e) T_flags_le_uint(a, e, 0) 1455 #define T_assert_le_u8(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1456 #define T_quiet_le_u8(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1457 #define T_step_le_u8(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1458 #define T_step_assert_le_u8(s, a, e) \ 1459 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1461 #define T_lt_u8(a, e) T_flags_lt_uint(a, e, 0) 1462 #define T_assert_lt_u8(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1463 #define T_quiet_lt_u8(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1464 #define T_step_lt_u8(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1465 #define T_step_assert_lt_u8(s, a, e) \ 1466 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1480 #define T_eq_i16(a, e) T_flags_eq_int(a, e, 0) 1481 #define T_assert_eq_i16(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 1482 #define T_quiet_eq_i16(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 1483 #define T_step_eq_i16(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 1484 #define T_step_assert_eq_i16(s, a, e) \ 1485 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1487 #define T_ne_i16(a, e) T_flags_ne_int(a, e, 0) 1488 #define T_assert_ne_i16(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 1489 #define T_quiet_ne_i16(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 1490 #define T_step_ne_i16(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 1491 #define T_step_assert_ne_i16(s, a, e) \ 1492 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1494 #define T_ge_i16(a, e) T_flags_ge_int(a, e, 0) 1495 #define T_assert_ge_i16(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 1496 #define T_quiet_ge_i16(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 1497 #define T_step_ge_i16(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 1498 #define T_step_assert_ge_i16(s, a, e) \ 1499 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1501 #define T_gt_i16(a, e) T_flags_gt_int(a, e, 0) 1502 #define T_assert_gt_i16(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 1503 #define T_quiet_gt_i16(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 1504 #define T_step_gt_i16(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 1505 #define T_step_assert_gt_i16(s, a, e) \ 1506 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1508 #define T_le_i16(a, e) T_flags_le_int(a, e, 0) 1509 #define T_assert_le_i16(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 1510 #define T_quiet_le_i16(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 1511 #define T_step_le_i16(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 1512 #define T_step_assert_le_i16(s, a, e) \ 1513 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1515 #define T_lt_i16(a, e) T_flags_lt_int(a, e, 0) 1516 #define T_assert_lt_i16(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 1517 #define T_quiet_lt_i16(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 1518 #define T_step_lt_i16(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 1519 #define T_step_assert_lt_i16(s, a, e) \ 1520 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1534 #define T_eq_u16(a, e) T_flags_eq_uint(a, e, 0) 1535 #define T_assert_eq_u16(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 1536 #define T_quiet_eq_u16(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 1537 #define T_step_eq_u16(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 1538 #define T_step_assert_eq_u16(s, a, e) \ 1539 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1541 #define T_ne_u16(a, e) T_flags_ne_uint(a, e, 0) 1542 #define T_assert_ne_u16(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1543 #define T_quiet_ne_u16(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1544 #define T_step_ne_u16(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1545 #define T_step_assert_ne_u16(s, a, e) \ 1546 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1548 #define T_ge_u16(a, e) T_flags_ge_uint(a, e, 0) 1549 #define T_assert_ge_u16(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1550 #define T_quiet_ge_u16(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1551 #define T_step_ge_u16(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1552 #define T_step_assert_ge_u16(s, a, e) \ 1553 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1555 #define T_gt_u16(a, e) T_flags_gt_uint(a, e, 0) 1556 #define T_assert_gt_u16(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1557 #define T_quiet_gt_u16(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1558 #define T_step_gt_u16(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1559 #define T_step_assert_gt_u16(s, a, e) \ 1560 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1562 #define T_le_u16(a, e) T_flags_le_uint(a, e, 0) 1563 #define T_assert_le_u16(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1564 #define T_quiet_le_u16(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1565 #define T_step_le_u16(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1566 #define T_step_assert_le_u16(s, a, e) \ 1567 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1569 #define T_lt_u16(a, e) T_flags_lt_uint(a, e, 0) 1570 #define T_assert_lt_u16(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1571 #define T_quiet_lt_u16(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1572 #define T_step_lt_u16(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1573 #define T_step_assert_lt_u16(s, a, e) \ 1574 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1588 #define T_eq_i32(a, e) T_flags_eq_long(a, e, 0) 1589 #define T_assert_eq_i32(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1590 #define T_quiet_eq_i32(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1591 #define T_step_eq_i32(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1592 #define T_step_assert_eq_i32(s, a, e) \ 1593 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1595 #define T_ne_i32(a, e) T_flags_ne_long(a, e, 0) 1596 #define T_assert_ne_i32(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1597 #define T_quiet_ne_i32(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1598 #define T_step_ne_i32(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1599 #define T_step_assert_ne_i32(s, a, e) \ 1600 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1602 #define T_ge_i32(a, e) T_flags_ge_long(a, e, 0) 1603 #define T_assert_ge_i32(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1604 #define T_quiet_ge_i32(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1605 #define T_step_ge_i32(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1606 #define T_step_assert_ge_i32(s, a, e) \ 1607 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1609 #define T_gt_i32(a, e) T_flags_gt_long(a, e, 0) 1610 #define T_assert_gt_i32(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1611 #define T_quiet_gt_i32(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1612 #define T_step_gt_i32(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1613 #define T_step_assert_gt_i32(s, a, e) \ 1614 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1616 #define T_le_i32(a, e) T_flags_le_long(a, e, 0) 1617 #define T_assert_le_i32(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1618 #define T_quiet_le_i32(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1619 #define T_step_le_i32(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1620 #define T_step_assert_le_i32(s, a, e) \ 1621 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1623 #define T_lt_i32(a, e) T_flags_lt_long(a, e, 0) 1624 #define T_assert_lt_i32(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1625 #define T_quiet_lt_i32(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1626 #define T_step_lt_i32(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1627 #define T_step_assert_lt_i32(s, a, e) \ 1628 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1642 #define T_eq_u32(a, e) T_flags_eq_ulong(a, e, 0) 1643 #define T_assert_eq_u32(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1644 #define T_quiet_eq_u32(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1645 #define T_step_eq_u32(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1646 #define T_step_assert_eq_u32(s, a, e) \ 1647 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1649 #define T_ne_u32(a, e) T_flags_ne_ulong(a, e, 0) 1650 #define T_assert_ne_u32(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1651 #define T_quiet_ne_u32(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1652 #define T_step_ne_u32(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1653 #define T_step_assert_ne_u32(s, a, e) \ 1654 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1656 #define T_ge_u32(a, e) T_flags_ge_ulong(a, e, 0) 1657 #define T_assert_ge_u32(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1658 #define T_quiet_ge_u32(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1659 #define T_step_ge_u32(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1660 #define T_step_assert_ge_u32(s, a, e) \ 1661 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1663 #define T_gt_u32(a, e) T_flags_gt_ulong(a, e, 0) 1664 #define T_assert_gt_u32(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1665 #define T_quiet_gt_u32(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1666 #define T_step_gt_u32(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1667 #define T_step_assert_gt_u32(s, a, e) \ 1668 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1670 #define T_le_u32(a, e) T_flags_le_ulong(a, e, 0) 1671 #define T_assert_le_u32(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1672 #define T_quiet_le_u32(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1673 #define T_step_le_u32(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1674 #define T_step_assert_le_u32(s, a, e) \ 1675 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1677 #define T_lt_u32(a, e) T_flags_lt_ulong(a, e, 0) 1678 #define T_assert_lt_u32(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 1679 #define T_quiet_lt_u32(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 1680 #define T_step_lt_u32(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 1681 #define T_step_assert_lt_u32(s, a, e) \ 1682 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1696 #define T_eq_i64(a, e) T_flags_eq_ll(a, e, 0) 1697 #define T_assert_eq_i64(a, e) T_flags_eq_ll(a, e, T_CHECK_STOP) 1698 #define T_quiet_eq_i64(a, e) T_flags_eq_ll(a, e, T_CHECK_QUIET) 1699 #define T_step_eq_i64(s, a, e) T_flags_eq_ll(a, e, T_CHECK_STEP(s)) 1700 #define T_step_assert_eq_i64(s, a, e) \ 1701 T_flags_eq_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1703 #define T_ne_i64(a, e) T_flags_ne_ll(a, e, 0) 1704 #define T_assert_ne_i64(a, e) T_flags_ne_ll(a, e, T_CHECK_STOP) 1705 #define T_quiet_ne_i64(a, e) T_flags_ne_ll(a, e, T_CHECK_QUIET) 1706 #define T_step_ne_i64(s, a, e) T_flags_ne_ll(a, e, T_CHECK_STEP(s)) 1707 #define T_step_assert_ne_i64(s, a, e) \ 1708 T_flags_ne_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1710 #define T_ge_i64(a, e) T_flags_ge_ll(a, e, 0) 1711 #define T_assert_ge_i64(a, e) T_flags_ge_ll(a, e, T_CHECK_STOP) 1712 #define T_quiet_ge_i64(a, e) T_flags_ge_ll(a, e, T_CHECK_QUIET) 1713 #define T_step_ge_i64(s, a, e) T_flags_ge_ll(a, e, T_CHECK_STEP(s)) 1714 #define T_step_assert_ge_i64(s, a, e) \ 1715 T_flags_ge_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1717 #define T_gt_i64(a, e) T_flags_gt_ll(a, e, 0) 1718 #define T_assert_gt_i64(a, e) T_flags_gt_ll(a, e, T_CHECK_STOP) 1719 #define T_quiet_gt_i64(a, e) T_flags_gt_ll(a, e, T_CHECK_QUIET) 1720 #define T_step_gt_i64(s, a, e) T_flags_gt_ll(a, e, T_CHECK_STEP(s)) 1721 #define T_step_assert_gt_i64(s, a, e) \ 1722 T_flags_gt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1724 #define T_le_i64(a, e) T_flags_le_ll(a, e, 0) 1725 #define T_assert_le_i64(a, e) T_flags_le_ll(a, e, T_CHECK_STOP) 1726 #define T_quiet_le_i64(a, e) T_flags_le_ll(a, e, T_CHECK_QUIET) 1727 #define T_step_le_i64(s, a, e) T_flags_le_ll(a, e, T_CHECK_STEP(s)) 1728 #define T_step_assert_le_i64(s, a, e) \ 1729 T_flags_le_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1731 #define T_lt_i64(a, e) T_flags_lt_ll(a, e, 0) 1732 #define T_assert_lt_i64(a, e) T_flags_lt_ll(a, e, T_CHECK_STOP) 1733 #define T_quiet_lt_i64(a, e) T_flags_lt_ll(a, e, T_CHECK_QUIET) 1734 #define T_step_lt_i64(s, a, e) T_flags_lt_ll(a, e, T_CHECK_STEP(s)) 1735 #define T_step_assert_lt_i64(s, a, e) \ 1736 T_flags_lt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1750 #define T_eq_u64(a, e) T_flags_eq_ull(a, e, 0) 1751 #define T_assert_eq_u64(a, e) T_flags_eq_ull(a, e, T_CHECK_STOP) 1752 #define T_quiet_eq_u64(a, e) T_flags_eq_ull(a, e, T_CHECK_QUIET) 1753 #define T_step_eq_u64(s, a, e) T_flags_eq_ull(a, e, T_CHECK_STEP(s)) 1754 #define T_step_assert_eq_u64(s, a, e) \ 1755 T_flags_eq_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1757 #define T_ne_u64(a, e) T_flags_ne_ull(a, e, 0) 1758 #define T_assert_ne_u64(a, e) T_flags_ne_ull(a, e, T_CHECK_STOP) 1759 #define T_quiet_ne_u64(a, e) T_flags_ne_ull(a, e, T_CHECK_QUIET) 1760 #define T_step_ne_u64(s, a, e) T_flags_ne_ull(a, e, T_CHECK_STEP(s)) 1761 #define T_step_assert_ne_u64(s, a, e) \ 1762 T_flags_ne_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1764 #define T_ge_u64(a, e) T_flags_ge_ull(a, e, 0) 1765 #define T_assert_ge_u64(a, e) T_flags_ge_ull(a, e, T_CHECK_STOP) 1766 #define T_quiet_ge_u64(a, e) T_flags_ge_ull(a, e, T_CHECK_QUIET) 1767 #define T_step_ge_u64(s, a, e) T_flags_ge_ull(a, e, T_CHECK_STEP(s)) 1768 #define T_step_assert_ge_u64(s, a, e) \ 1769 T_flags_ge_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1771 #define T_gt_u64(a, e) T_flags_gt_ull(a, e, 0) 1772 #define T_assert_gt_u64(a, e) T_flags_gt_ull(a, e, T_CHECK_STOP) 1773 #define T_quiet_gt_u64(a, e) T_flags_gt_ull(a, e, T_CHECK_QUIET) 1774 #define T_step_gt_u64(s, a, e) T_flags_gt_ull(a, e, T_CHECK_STEP(s)) 1775 #define T_step_assert_gt_u64(s, a, e) \ 1776 T_flags_gt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1778 #define T_le_u64(a, e) T_flags_le_ull(a, e, 0) 1779 #define T_assert_le_u64(a, e) T_flags_le_ull(a, e, T_CHECK_STOP) 1780 #define T_quiet_le_u64(a, e) T_flags_le_ull(a, e, T_CHECK_QUIET) 1781 #define T_step_le_u64(s, a, e) T_flags_le_ull(a, e, T_CHECK_STEP(s)) 1782 #define T_step_assert_le_u64(s, a, e) \ 1783 T_flags_le_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1785 #define T_lt_u64(a, e) T_flags_lt_ull(a, e, 0) 1786 #define T_assert_lt_u64(a, e) T_flags_lt_ull(a, e, T_CHECK_STOP) 1787 #define T_quiet_lt_u64(a, e) T_flags_lt_ull(a, e, T_CHECK_QUIET) 1788 #define T_step_lt_u64(s, a, e) T_flags_lt_ull(a, e, T_CHECK_STEP(s)) 1789 #define T_step_assert_lt_u64(s, a, e) \ 1790 T_flags_lt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1804 #define T_eq_iptr(a, e) T_flags_eq_long(a, e, 0) 1805 #define T_assert_eq_iptr(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1806 #define T_quiet_eq_iptr(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1807 #define T_step_eq_iptr(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1808 #define T_step_assert_eq_iptr(s, a, e) \ 1809 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1811 #define T_ne_iptr(a, e) T_flags_ne_long(a, e, 0) 1812 #define T_assert_ne_iptr(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1813 #define T_quiet_ne_iptr(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1814 #define T_step_ne_iptr(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1815 #define T_step_assert_ne_iptr(s, a, e) \ 1816 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1818 #define T_ge_iptr(a, e) T_flags_ge_long(a, e, 0) 1819 #define T_assert_ge_iptr(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1820 #define T_quiet_ge_iptr(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1821 #define T_step_ge_iptr(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1822 #define T_step_assert_ge_iptr(s, a, e) \ 1823 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1825 #define T_gt_iptr(a, e) T_flags_gt_long(a, e, 0) 1826 #define T_assert_gt_iptr(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1827 #define T_quiet_gt_iptr(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1828 #define T_step_gt_iptr(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1829 #define T_step_assert_gt_iptr(s, a, e) \ 1830 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1832 #define T_le_iptr(a, e) T_flags_le_long(a, e, 0) 1833 #define T_assert_le_iptr(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1834 #define T_quiet_le_iptr(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1835 #define T_step_le_iptr(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1836 #define T_step_assert_le_iptr(s, a, e) \ 1837 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1839 #define T_lt_iptr(a, e) T_flags_lt_long(a, e, 0) 1840 #define T_assert_lt_iptr(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1841 #define T_quiet_lt_iptr(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1842 #define T_step_lt_iptr(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1843 #define T_step_assert_lt_iptr(s, a, e) \ 1844 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1858 #define T_eq_uptr(a, e) T_flags_eq_ulong(a, e, 0) 1859 #define T_assert_eq_uptr(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1860 #define T_quiet_eq_uptr(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1861 #define T_step_eq_uptr(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1862 #define T_step_assert_eq_uptr(s, a, e) \ 1863 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1865 #define T_ne_uptr(a, e) T_flags_ne_ulong(a, e, 0) 1866 #define T_assert_ne_uptr(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1867 #define T_quiet_ne_uptr(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1868 #define T_step_ne_uptr(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1869 #define T_step_assert_ne_uptr(s, a, e) \ 1870 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1872 #define T_ge_uptr(a, e) T_flags_ge_ulong(a, e, 0) 1873 #define T_assert_ge_uptr(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1874 #define T_quiet_ge_uptr(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1875 #define T_step_ge_uptr(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1876 #define T_step_assert_ge_uptr(s, a, e) \ 1877 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1879 #define T_gt_uptr(a, e) T_flags_gt_ulong(a, e, 0) 1880 #define T_assert_gt_uptr(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1881 #define T_quiet_gt_uptr(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1882 #define T_step_gt_uptr(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1883 #define T_step_assert_gt_uptr(s, a, e) \ 1884 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1886 #define T_le_uptr(a, e) T_flags_le_ulong(a, e, 0) 1887 #define T_assert_le_uptr(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1888 #define T_quiet_le_uptr(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1889 #define T_step_le_uptr(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1890 #define T_step_assert_le_uptr(s, a, e) \ 1891 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1893 #define T_lt_uptr(a, e) T_flags_lt_ulong(a, e, 0) 1894 #define T_assert_lt_uptr(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 1895 #define T_quiet_lt_uptr(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 1896 #define T_step_lt_uptr(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 1897 #define T_step_assert_lt_uptr(s, a, e) \ 1898 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1912 #define T_eq_ssz(a, e) T_flags_eq_long(a, e, 0) 1913 #define T_assert_eq_ssz(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1914 #define T_quiet_eq_ssz(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1915 #define T_step_eq_ssz(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1916 #define T_step_assert_eq_ssz(s, a, e) \ 1917 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1919 #define T_ne_ssz(a, e) T_flags_ne_long(a, e, 0) 1920 #define T_assert_ne_ssz(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1921 #define T_quiet_ne_ssz(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1922 #define T_step_ne_ssz(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1923 #define T_step_assert_ne_ssz(s, a, e) \ 1924 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1926 #define T_ge_ssz(a, e) T_flags_ge_long(a, e, 0) 1927 #define T_assert_ge_ssz(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1928 #define T_quiet_ge_ssz(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1929 #define T_step_ge_ssz(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1930 #define T_step_assert_ge_ssz(s, a, e) \ 1931 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1933 #define T_gt_ssz(a, e) T_flags_gt_long(a, e, 0) 1934 #define T_assert_gt_ssz(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1935 #define T_quiet_gt_ssz(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1936 #define T_step_gt_ssz(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1937 #define T_step_assert_gt_ssz(s, a, e) \ 1938 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1940 #define T_le_ssz(a, e) T_flags_le_long(a, e, 0) 1941 #define T_assert_le_ssz(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1942 #define T_quiet_le_ssz(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1943 #define T_step_le_ssz(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1944 #define T_step_assert_le_ssz(s, a, e) \ 1945 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1947 #define T_lt_ssz(a, e) T_flags_lt_long(a, e, 0) 1948 #define T_assert_lt_ssz(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1949 #define T_quiet_lt_ssz(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1950 #define T_step_lt_ssz(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1951 #define T_step_assert_lt_ssz(s, a, e) \ 1952 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1966 #define T_eq_sz(a, e) T_flags_eq_ulong(a, e, 0) 1967 #define T_assert_eq_sz(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1968 #define T_quiet_eq_sz(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1969 #define T_step_eq_sz(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1970 #define T_step_assert_eq_sz(s, a, e) \ 1971 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1973 #define T_ne_sz(a, e) T_flags_ne_ulong(a, e, 0) 1974 #define T_assert_ne_sz(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1975 #define T_quiet_ne_sz(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1976 #define T_step_ne_sz(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1977 #define T_step_assert_ne_sz(s, a, e) \ 1978 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1980 #define T_ge_sz(a, e) T_flags_ge_ulong(a, e, 0) 1981 #define T_assert_ge_sz(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1982 #define T_quiet_ge_sz(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1983 #define T_step_ge_sz(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1984 #define T_step_assert_ge_sz(s, a, e) \ 1985 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1987 #define T_gt_sz(a, e) T_flags_gt_ulong(a, e, 0) 1988 #define T_assert_gt_sz(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1989 #define T_quiet_gt_sz(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1990 #define T_step_gt_sz(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1991 #define T_step_assert_gt_sz(s, a, e) \ 1992 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1994 #define T_le_sz(a, e) T_flags_le_ulong(a, e, 0) 1995 #define T_assert_le_sz(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1996 #define T_quiet_le_sz(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1997 #define T_step_le_sz(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1998 #define T_step_assert_le_sz(s, a, e) \ 1999 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2001 #define T_lt_sz(a, e) T_flags_lt_ulong(a, e, 0) 2002 #define T_assert_lt_sz(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 2003 #define T_quiet_lt_sz(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 2004 #define T_step_lt_sz(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 2005 #define T_step_assert_lt_sz(s, a, e) \ 2006 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2020 const char *T_strerror(
int);
2022 #define T_eno(a, e) T_flags_eno(a, e, 0) 2023 #define T_assert_eno(a, e) T_flags_eno(a, e, T_CHECK_STOP) 2024 #define T_quiet_eno(a, e) T_flags_eno(a, e, T_CHECK_QUIET) 2025 #define T_step_eno(s, a, e) T_flags_eno(a, e, T_CHECK_STEP(s)) 2026 #define T_step_assert_eno(s, a, e) \ 2027 T_flags_eno(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2029 #define T_eno_success(a) T_flags_eno_success(a, 0) 2030 #define T_assert_eno_success(a) T_flags_eno_success(a, T_CHECK_STOP) 2031 #define T_quiet_eno_success(a) T_flags_eno_success(a, T_CHECK_QUIET) 2032 #define T_step_eno_success(s, a) T_flags_eno_success(a, T_CHECK_STEP(s)) 2033 #define T_step_assert_eno_success(s, a) \ 2034 T_flags_eno_success(a, T_CHECK_STEP(s) | T_CHECK_STOP) 2036 #define T_psx_error(a, eno) T_flags_psx_error(a, eno, 0) 2037 #define T_assert_psx_error(a, eno) T_flags_psx_error(a, eno, T_CHECK_STOP) 2038 #define T_quiet_psx_error(a, eno) T_flags_psx_error(a, eno, T_CHECK_QUIET) 2039 #define T_step_psx_error(s, a, eno) T_flags_psx_error(a, eno, T_CHECK_STEP(s)) 2040 #define T_step_assert_psx_error(s, a, eno) \ 2041 T_flags_psx_error(a, eno, T_CHECK_STEP(s) | T_CHECK_STOP) 2043 #define T_psx_success(a) T_flags_psx_success(a, 0) 2044 #define T_assert_psx_success(a) T_flags_psx_success(a, T_CHECK_STOP) 2045 #define T_quiet_psx_success(a) T_flags_psx_success(a, T_CHECK_QUIET) 2046 #define T_step_psx_success(s, a) T_flags_psx_success(a, T_CHECK_STEP(s)) 2047 #define T_step_assert_psx_success(s, a) \ 2048 T_flags_psx_success(a, T_CHECK_STEP(s) | T_CHECK_STOP) 2055 #define T_flags_rsc(a, e, flags) \ 2057 static const T_check_context T_check_instance = { \ 2058 T_FILE_NAME, __LINE__, flags }; \ 2059 T_check_rsc(a, &T_check_instance, e); \ 2064 #define T_flags_rsc_success(a, flags) \ 2066 static const T_check_context T_check_instance = { \ 2067 T_FILE_NAME, __LINE__, flags }; \ 2068 T_check_rsc_success(a, &T_check_instance); \ 2081 #define T_rsc(a, e) T_flags_rsc(a, e, 0) 2082 #define T_assert_rsc(a, e) T_flags_rsc(a, e, T_CHECK_STOP) 2083 #define T_quiet_rsc(a, e) T_flags_rsc(a, e, T_CHECK_QUIET) 2084 #define T_step_rsc(s, a, e) T_flags_rsc(a, e, T_CHECK_STEP(s)) 2085 #define T_step_assert_rsc(s, a, e) \ 2086 T_flags_rsc(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2088 #define T_rsc_success(a) T_flags_rsc_success(a, 0) 2089 #define T_assert_rsc_success(a) T_flags_rsc_success(a, T_CHECK_STOP) 2090 #define T_quiet_rsc_success(a) T_flags_rsc_success(a, T_CHECK_QUIET) 2091 #define T_step_rsc_success(s, a) T_flags_rsc_success(a, T_CHECK_STEP(s)) 2092 #define T_step_assert_rsc_success(s, a) \ 2093 T_flags_rsc_success(a, T_CHECK_STEP(s) | T_CHECK_STOP) 2098 void T_plan(
unsigned int);
2100 #define T_step(s, ...) T_flags_true(true, T_CHECK_STEP(s), __VA_ARGS__) 2101 #define T_step_assert(s, ...) \ 2102 T_flags_true(true, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 2115 typedef CPU_Counter_ticks T_ticks;
2117 typedef unsigned long T_ticks;
2120 typedef uint64_t T_time;
2123 typedef char T_time_string[24];
2125 const char *T_time_to_string_ns(T_time, T_time_string);
2127 const char *T_time_to_string_us(T_time, T_time_string);
2129 const char *T_time_to_string_ms(T_time, T_time_string);
2131 const char *T_time_to_string_s(T_time, T_time_string);
2133 const char *T_ticks_to_string_ns(T_ticks, T_time_string);
2135 const char *T_ticks_to_string_us(T_ticks, T_time_string);
2137 const char *T_ticks_to_string_ms(T_ticks, T_time_string);
2139 const char *T_ticks_to_string_s(T_ticks, T_time_string);
2141 T_time T_ticks_to_time(T_ticks);
2143 T_ticks T_time_to_ticks(T_time);
2145 T_time T_seconds_and_nanoseconds_to_time(uint32_t, uint32_t);
2147 void T_time_to_seconds_and_nanoseconds(T_time, uint32_t *, uint32_t *);
2152 static inline T_ticks
2158 T_ticks T_tick(
void);
2161 T_time T_now_clock(
void);
2163 T_time T_now_dummy(
void);
2165 T_time T_now_tick(
void);
2167 T_time T_case_begin_time(
void);
2171 void *T_malloc(
size_t);
2173 void *T_calloc(
size_t,
size_t);
2175 void *T_zalloc(
size_t,
void (*)(
void *));
2177 void T_free(
void *);
2179 void T_register(
void);
2182 T_EVENT_RUN_INITIALIZE_EARLY,
2183 T_EVENT_RUN_INITIALIZE_LATE,
2188 T_EVENT_RUN_FINALIZE_EARLY,
2189 T_EVENT_RUN_FINALIZE_LATE
2192 typedef void (*T_action)(T_event,
const char *);
2194 typedef void (*T_putchar)(int,
void *);
2202 T_verbosity verbosity;
2203 T_time (*now)(void);
2204 size_t action_count;
2205 const T_action *actions;
2208 void T_putchar_default(
int,
void *);
2212 bool T_is_runner(
void);
2214 void T_run_initialize(
const T_config *);
2216 void T_run_all(
void);
2218 void T_run_by_name(
const char *);
2220 void T_case_begin(
const char *,
const T_fixture *);
2222 void T_case_end(
void);
2224 bool T_run_finalize(
void);
2226 void T_set_putchar(T_putchar,
void *, T_putchar *,
void **);
2228 void *T_fixture_context(
void);
2230 void T_set_fixture_context(
void *);
2233 #define T_TEST_CASE_FIXTURE(name, fixture) \ 2234 void T_case_body_##name(void); \ 2235 T_case_context T_case_instance_##name = { \ 2237 T_case_body_##name, \ 2241 static T_case_context * const T_case_item_##name \ 2242 __attribute((__section__(".rtemsroset._T.content.0." #name))) \ 2243 __attribute((__used__)) = &T_case_instance_##name; \ 2244 void T_case_body_##name(void) 2246 #define T_TEST_CASE_FIXTURE(name, fixture) \ 2247 void T_case_body_##name(void); \ 2248 T_case_context T_case_instance_##name = { \ 2250 T_case_body_##name, \ 2254 __attribute((__constructor__)) static void \ 2255 T_case_register_##name(void) \ 2257 T_case_register(&T_case_instance_##name); \ 2259 void T_case_body_##name(void) 2262 #define T_TEST_CASE(name) T_TEST_CASE_FIXTURE(name, NULL) 2264 void T_report_hash_sha256(T_event,
const char *);
2266 void T_check_heap(T_event,
const char *);
2269 void T_check_task_context(T_event,
const char *);
2271 void T_check_file_descriptors(T_event,
const char *);
2273 void T_check_rtems_barriers(T_event,
const char *);
2275 void T_check_rtems_extensions(T_event,
const char *);
2277 void T_check_rtems_message_queues(T_event,
const char *);
2279 void T_check_rtems_partitions(T_event,
const char *);
2281 void T_check_rtems_periods(T_event,
const char *);
2283 void T_check_rtems_regions(T_event,
const char *);
2285 void T_check_rtems_semaphores(T_event,
const char *);
2287 void T_check_rtems_tasks(T_event,
const char *);
2289 void T_check_rtems_timers(T_event,
const char *);
2291 void T_check_posix_keys(T_event,
const char *);
2293 void T_check_posix_message_queues(T_event,
const char *);
2295 void T_check_posix_semaphores(T_event,
const char *);
2297 void T_check_posix_shms(T_event,
const char *);
2299 void T_check_posix_threads(T_event,
const char *);
2301 void T_check_posix_timers(T_event,
const char *);
2341 size_t sample_count;
2347 void (*setup)(
void *);
2348 void (*body)(
void *);
2349 bool (*teardown)(
void *, T_ticks *, uint32_t, uint32_t,
unsigned int);
2353 #define T_MEASURE_RUNTIME_ALLOW_CLOCK_ISR 0x1 2355 #define T_MEASURE_RUNTIME_REPORT_SAMPLES 0x2 2357 #define T_MEASURE_RUNTIME_DISABLE_VALID_CACHE 0x10 2359 #define T_MEASURE_RUNTIME_DISABLE_HOT_CACHE 0x20 2361 #define T_MEASURE_RUNTIME_DISABLE_DIRTY_CACHE 0x40 2363 #define T_MEASURE_RUNTIME_DISABLE_MINOR_LOAD 0x80 2365 #define T_MEASURE_RUNTIME_DISABLE_MAX_LOAD 0x100 CPU_Counter_ticks _CPU_Counter_read(void)
Returns the current CPU counter value.
Definition: system-clocks.c:117
Definition: t-test-rtems-measure.c:45
Definition: b1553brm.c:75
Definition: mongoose.c:442