28 #ifndef THE_T_TEST_FRAMEWORK_H 29 #define THE_T_TEST_FRAMEWORK_H 38 #include <rtems/score/cpu.h> 60 void (*setup)(
void *);
62 void (*teardown)(
void *);
63 void *initial_context;
66 #define T_ARRAY_SIZE(array) (sizeof(array) / sizeof((array)[0])) 73 #define T_FILE_NAME __FILE__ 97 #define T_CHECK_STOP 1U 99 #define T_CHECK_QUIET 2U 101 #define T_CHECK_STEP_FLAG 4U 103 #define T_CHECK_STEP_TO_FLAGS(step) ((unsigned int)(step) << 8) 105 #define T_CHECK_STEP_FROM_FLAGS(flags) ((flags) >> 8) 107 #define T_CHECK_STEP(step) (T_CHECK_STEP_TO_FLAGS(step) | T_CHECK_STEP_FLAG) 122 #define T_flags_true(a, flags, ...) \ 124 static const T_check_context T_check_instance = { \ 125 T_FILE_NAME, __LINE__, flags }; \ 126 T_check_true(a, &T_check_instance, __VA_ARGS__); \ 129 #define T_flags_eq(a, e, flags, ...) \ 130 T_flags_true((a) == (e), flags, __VA_ARGS__) 132 #define T_flags_ne(a, e, flags, ...) \ 133 T_flags_true((a) != (e), flags, __VA_ARGS__) 137 #define T_flags_eq_ptr(a, e, flags, sa, se) \ 139 static const T_check_context_msg T_check_instance = { \ 140 { T_FILE_NAME, __LINE__, flags }, sa " == " se }; \ 141 T_check_eq_ptr(a, &T_check_instance, e); \ 146 #define T_flags_ne_ptr(a, e, flags, sa, se) \ 148 static const T_check_context_msg T_check_instance = { \ 149 { T_FILE_NAME, __LINE__, flags }, sa " != " se }; \ 150 T_check_ne_ptr(a, &T_check_instance, e); \ 155 #define T_flags_null(a, flags, sa) \ 157 static const T_check_context_msg T_check_instance = { \ 158 { T_FILE_NAME, __LINE__, flags }, sa }; \ 159 T_check_null(a, &T_check_instance); \ 164 #define T_flags_not_null(a, flags, sa) \ 166 static const T_check_context_msg T_check_instance = { \ 167 { T_FILE_NAME, __LINE__, flags }, sa }; \ 168 T_check_not_null(a, &T_check_instance); \ 174 #define T_flags_eq_mem(a, e, n, flags, sa, se, sn) \ 176 static const T_check_context_msg T_check_instance = { \ 177 { T_FILE_NAME, __LINE__, flags }, \ 178 "memcmp(" sa ", " se ", " sn ") == 0" }; \ 179 T_check_eq_mem(a, &T_check_instance, e, n); \ 185 #define T_flags_ne_mem(a, e, n, flags, sa, se, sn) \ 187 static const T_check_context_msg T_check_instance = { \ 188 { T_FILE_NAME, __LINE__, flags }, \ 189 "memcmp(" sa ", " se ", " sn ") != 0" }; \ 190 T_check_ne_mem(a, &T_check_instance, e, n); \ 193 void T_check_eq_str(
const char *,
const T_check_context *,
const char *);
195 #define T_flags_eq_str(a, e, flags) \ 197 static const T_check_context T_check_instance = { \ 198 T_FILE_NAME, __LINE__, flags }; \ 199 T_check_eq_str(a, &T_check_instance, e); \ 202 void T_check_ne_str(
const char *,
const T_check_context *,
const char *);
204 #define T_flags_ne_str(a, e, flags) \ 206 static const T_check_context T_check_instance = { \ 207 T_FILE_NAME, __LINE__, flags }; \ 208 T_check_ne_str(a, &T_check_instance, e); \ 211 void T_check_eq_nstr(
const char *,
const T_check_context *,
const char *,
214 #define T_flags_eq_nstr(a, e, n, flags) \ 216 static const T_check_context T_check_instance = { \ 217 T_FILE_NAME, __LINE__, flags }; \ 218 T_check_eq_nstr(a, &T_check_instance, e, n); \ 221 void T_check_ne_nstr(
const char *,
const T_check_context *,
const char *,
224 #define T_flags_ne_nstr(a, e, n, flags) \ 226 static const T_check_context T_check_instance = { \ 227 T_FILE_NAME, __LINE__, flags }; \ 228 T_check_ne_nstr(a, &T_check_instance, e, n); \ 233 #define T_flags_eq_char(a, e, flags) \ 235 static const T_check_context T_check_instance = { \ 236 T_FILE_NAME, __LINE__, flags }; \ 237 T_check_eq_char(a, &T_check_instance, e); \ 242 #define T_flags_ne_char(a, e, flags) \ 244 static const T_check_context T_check_instance = { \ 245 T_FILE_NAME, __LINE__, flags }; \ 246 T_check_ne_char(a, &T_check_instance, e); \ 251 #define T_flags_eq_int(a, e, flags) \ 253 static const T_check_context T_check_instance = { \ 254 T_FILE_NAME, __LINE__, flags }; \ 255 T_check_eq_int(a, &T_check_instance, e); \ 260 #define T_flags_ne_int(a, e, flags) \ 262 static const T_check_context T_check_instance = { \ 263 T_FILE_NAME, __LINE__, flags }; \ 264 T_check_ne_int(a, &T_check_instance, e); \ 269 #define T_flags_ge_int(a, e, flags) \ 271 static const T_check_context T_check_instance = { \ 272 T_FILE_NAME, __LINE__, flags }; \ 273 T_check_ge_int(a, &T_check_instance, e); \ 278 #define T_flags_gt_int(a, e, flags) \ 280 static const T_check_context T_check_instance = { \ 281 T_FILE_NAME, __LINE__, flags }; \ 282 T_check_gt_int(a, &T_check_instance, e); \ 287 #define T_flags_le_int(a, e, flags) \ 289 static const T_check_context T_check_instance = { \ 290 T_FILE_NAME, __LINE__, flags }; \ 291 T_check_le_int(a, &T_check_instance, e); \ 296 #define T_flags_lt_int(a, e, flags) \ 298 static const T_check_context T_check_instance = { \ 299 T_FILE_NAME, __LINE__, flags }; \ 300 T_check_lt_int(a, &T_check_instance, e); \ 303 void T_check_eq_uint(
unsigned int,
const T_check_context *,
unsigned int);
305 #define T_flags_eq_uint(a, e, flags) \ 307 static const T_check_context T_check_instance = { \ 308 T_FILE_NAME, __LINE__, flags }; \ 309 T_check_eq_uint(a, &T_check_instance, e); \ 312 void T_check_ne_uint(
unsigned int,
const T_check_context *,
unsigned int);
314 #define T_flags_ne_uint(a, e, flags) \ 316 static const T_check_context T_check_instance = { \ 317 T_FILE_NAME, __LINE__, flags }; \ 318 T_check_ne_uint(a, &T_check_instance, e); \ 321 void T_check_ge_uint(
unsigned int,
const T_check_context *,
unsigned int);
323 #define T_flags_ge_uint(a, e, flags) \ 325 static const T_check_context T_check_instance = { \ 326 T_FILE_NAME, __LINE__, flags }; \ 327 T_check_ge_uint(a, &T_check_instance, e); \ 330 void T_check_gt_uint(
unsigned int,
const T_check_context *,
unsigned int);
332 #define T_flags_gt_uint(a, e, flags) \ 334 static const T_check_context T_check_instance = { \ 335 T_FILE_NAME, __LINE__, flags }; \ 336 T_check_gt_uint(a, &T_check_instance, e); \ 339 void T_check_le_uint(
unsigned int,
const T_check_context *,
unsigned int);
341 #define T_flags_le_uint(a, e, flags) \ 343 static const T_check_context T_check_instance = { \ 344 T_FILE_NAME, __LINE__, flags }; \ 345 T_check_le_uint(a, &T_check_instance, e); \ 348 void T_check_lt_uint(
unsigned int,
const T_check_context *,
unsigned int);
350 #define T_flags_lt_uint(a, e, flags) \ 352 static const T_check_context T_check_instance = { \ 353 T_FILE_NAME, __LINE__, flags }; \ 354 T_check_lt_uint(a, &T_check_instance, e); \ 359 #define T_flags_eq_long(a, e, flags) \ 361 static const T_check_context T_check_instance = { \ 362 T_FILE_NAME, __LINE__, flags }; \ 363 T_check_eq_long(a, &T_check_instance, e); \ 368 #define T_flags_ne_long(a, e, flags) \ 370 static const T_check_context T_check_instance = { \ 371 T_FILE_NAME, __LINE__, flags }; \ 372 T_check_ne_long(a, &T_check_instance, e); \ 377 #define T_flags_ge_long(a, e, flags) \ 379 static const T_check_context T_check_instance = { \ 380 T_FILE_NAME, __LINE__, flags }; \ 381 T_check_ge_long(a, &T_check_instance, e); \ 386 #define T_flags_gt_long(a, e, flags) \ 388 static const T_check_context T_check_instance = { \ 389 T_FILE_NAME, __LINE__, flags }; \ 390 T_check_gt_long(a, &T_check_instance, e); \ 395 #define T_flags_le_long(a, e, flags) \ 397 static const T_check_context T_check_instance = { \ 398 T_FILE_NAME, __LINE__, flags }; \ 399 T_check_le_long(a, &T_check_instance, e); \ 404 #define T_flags_lt_long(a, e, flags) \ 406 static const T_check_context T_check_instance = { \ 407 T_FILE_NAME, __LINE__, flags }; \ 408 T_check_lt_long(a, &T_check_instance, e); \ 411 void T_check_eq_ulong(
unsigned long,
const T_check_context *,
unsigned long);
413 #define T_flags_eq_ulong(a, e, flags) \ 415 static const T_check_context T_check_instance = { \ 416 T_FILE_NAME, __LINE__, flags }; \ 417 T_check_eq_ulong(a, &T_check_instance, e); \ 420 void T_check_ne_ulong(
unsigned long,
const T_check_context *,
unsigned long);
422 #define T_flags_ne_ulong(a, e, flags) \ 424 static const T_check_context T_check_instance = { \ 425 T_FILE_NAME, __LINE__, flags }; \ 426 T_check_ne_ulong(a, &T_check_instance, e); \ 429 void T_check_ge_ulong(
unsigned long,
const T_check_context *,
unsigned long);
431 #define T_flags_ge_ulong(a, e, flags) \ 433 static const T_check_context T_check_instance = { \ 434 T_FILE_NAME, __LINE__, flags }; \ 435 T_check_ge_ulong(a, &T_check_instance, e); \ 438 void T_check_gt_ulong(
unsigned long,
const T_check_context *,
unsigned long);
440 #define T_flags_gt_ulong(a, e, flags) \ 442 static const T_check_context T_check_instance = { \ 443 T_FILE_NAME, __LINE__, flags }; \ 444 T_check_gt_ulong(a, &T_check_instance, e); \ 447 void T_check_le_ulong(
unsigned long,
const T_check_context *,
unsigned long);
449 #define T_flags_le_ulong(a, e, flags) \ 451 static const T_check_context T_check_instance = { \ 452 T_FILE_NAME, __LINE__, flags }; \ 453 T_check_le_ulong(a, &T_check_instance, e); \ 456 void T_check_lt_ulong(
unsigned long,
const T_check_context *,
unsigned long);
458 #define T_flags_lt_ulong(a, e, flags) \ 460 static const T_check_context T_check_instance = { \ 461 T_FILE_NAME, __LINE__, flags }; \ 462 T_check_lt_ulong(a, &T_check_instance, e); \ 467 #define T_flags_eq_ll(a, e, flags) \ 469 static const T_check_context T_check_instance = { \ 470 T_FILE_NAME, __LINE__, flags }; \ 471 T_check_eq_ll(a, &T_check_instance, e); \ 476 #define T_flags_ne_ll(a, e, flags) \ 478 static const T_check_context T_check_instance = { \ 479 T_FILE_NAME, __LINE__, flags }; \ 480 T_check_ne_ll(a, &T_check_instance, e); \ 485 #define T_flags_ge_ll(a, e, flags) \ 487 static const T_check_context T_check_instance = { \ 488 T_FILE_NAME, __LINE__, flags }; \ 489 T_check_ge_ll(a, &T_check_instance, e); \ 494 #define T_flags_gt_ll(a, e, flags) \ 496 static const T_check_context T_check_instance = { \ 497 T_FILE_NAME, __LINE__, flags }; \ 498 T_check_gt_ll(a, &T_check_instance, e); \ 503 #define T_flags_le_ll(a, e, flags) \ 505 static const T_check_context T_check_instance = { \ 506 T_FILE_NAME, __LINE__, flags }; \ 507 T_check_le_ll(a, &T_check_instance, e); \ 512 #define T_flags_lt_ll(a, e, flags) \ 514 static const T_check_context T_check_instance = { \ 515 T_FILE_NAME, __LINE__, flags }; \ 516 T_check_lt_ll(a, &T_check_instance, e); \ 522 #define T_flags_eq_ull(a, e, flags) \ 524 static const T_check_context T_check_instance = { \ 525 T_FILE_NAME, __LINE__, flags }; \ 526 T_check_eq_ull(a, &T_check_instance, e); \ 532 #define T_flags_ne_ull(a, e, flags) \ 534 static const T_check_context T_check_instance = { \ 535 T_FILE_NAME, __LINE__, flags }; \ 536 T_check_ne_ull(a, &T_check_instance, e); \ 542 #define T_flags_ge_ull(a, e, flags) \ 544 static const T_check_context T_check_instance = { \ 545 T_FILE_NAME, __LINE__, flags }; \ 546 T_check_ge_ull(a, &T_check_instance, e); \ 552 #define T_flags_gt_ull(a, e, flags) \ 554 static const T_check_context T_check_instance = { \ 555 T_FILE_NAME, __LINE__, flags }; \ 556 T_check_gt_ull(a, &T_check_instance, e); \ 562 #define T_flags_le_ull(a, e, flags) \ 564 static const T_check_context T_check_instance = { \ 565 T_FILE_NAME, __LINE__, flags }; \ 566 T_check_le_ull(a, &T_check_instance, e); \ 572 #define T_flags_lt_ull(a, e, flags) \ 574 static const T_check_context T_check_instance = { \ 575 T_FILE_NAME, __LINE__, flags }; \ 576 T_check_lt_ull(a, &T_check_instance, e); \ 581 #define T_flags_eno(a, e, flags) \ 583 static const T_check_context T_check_instance = { \ 584 T_FILE_NAME, __LINE__, flags }; \ 585 T_check_eno(a, &T_check_instance, e); \ 590 #define T_flags_eno_success(a, flags) \ 592 static const T_check_context T_check_instance = { \ 593 T_FILE_NAME, __LINE__, flags }; \ 594 T_check_eno_success(a, &T_check_instance); \ 599 #define T_flags_psx_error(a, eno, flags) \ 601 static const T_check_context T_check_instance = { \ 602 T_FILE_NAME, __LINE__, flags }; \ 603 T_check_psx_error(a, &T_check_instance, eno); \ 608 #define T_flags_psx_success(a, flags) \ 610 static const T_check_context T_check_instance = { \ 611 T_FILE_NAME, __LINE__, flags }; \ 612 T_check_psx_success(a, &T_check_instance); \ 617 int T_printf(
char const *, ...);
619 int T_vprintf(
char const *, va_list);
621 int T_snprintf(
char *,
size_t,
const char *, ...);
623 void T_log(T_verbosity,
char const *, ...);
625 const char *T_case_name(
void);
627 T_verbosity T_set_verbosity(T_verbosity);
639 #define T_true(a, ...) T_flags_true(a, 0, __VA_ARGS__) 640 #define T_assert_true(a, ...) T_flags_true(a, T_CHECK_STOP, __VA_ARGS__) 641 #define T_quiet_true(a, ...) T_flags_true(a, T_CHECK_QUIET, __VA_ARGS__) 642 #define T_step_true(s, a, ...) T_flags_true(a, T_CHECK_STEP(s), __VA_ARGS__) 643 #define T_step_assert_true(s, a, ...) \ 644 T_flags_true(a, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 646 #define T_false(a, ...) T_flags_true(!(a), 0, __VA_ARGS__) 647 #define T_assert_false(a, ...) T_flags_true(!(a), T_CHECK_STOP, __VA_ARGS__) 648 #define T_quiet_false(a, ...) T_flags_true(!(a), T_CHECK_QUIET, __VA_ARGS__) 649 #define T_step_false(s, a, ...) T_flags_true(!(a), T_CHECK_STEP(s), __VA_ARGS__) 650 #define T_step_assert_false(s, a, ...) \ 651 T_flags_true(!(a), T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 665 #define T_eq(a, e, ...) T_flags_eq(a, e, 0, __VA_ARGS__) 666 #define T_assert_eq(a, e, ...) T_flags_eq(a, e, T_CHECK_STOP, __VA_ARGS__) 667 #define T_quiet_eq(a, e, ...) T_flags_eq(a, e, T_CHECK_QUIET, __VA_ARGS__) 668 #define T_step_eq(s, a, e, ...) T_flags_eq(a, e, T_CHECK_STEP(s), __VA_ARGS__) 669 #define T_step_assert_eq(s, a, e, ...) \ 670 T_flags_eq(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 672 #define T_ne(a, e, ...) T_flags_ne(a, e, 0, __VA_ARGS__) 673 #define T_assert_ne(a, e, ...) T_flags_ne(a, e, T_CHECK_STOP, __VA_ARGS__) 674 #define T_quiet_ne(a, e, ...) T_flags_ne(a, e, T_CHECK_QUIET, __VA_ARGS__) 675 #define T_step_ne(s, a, e, ...) T_flags_ne(a, e, T_CHECK_STEP(s), __VA_ARGS__) 676 #define T_step_assert_ne(s, a, e, ...) \ 677 T_flags_ne(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 691 #define T_eq_ptr(a, e) T_flags_eq_ptr(a, e, 0, #a, #e) 692 #define T_assert_eq_ptr(a, e) T_flags_eq_ptr(a, e, T_CHECK_STOP, #a, #e) 693 #define T_quiet_eq_ptr(a, e) T_flags_eq_ptr(a, e, T_CHECK_QUIET, #a, #e) 694 #define T_step_eq_ptr(s, a, e) T_flags_eq_ptr(a, e, T_CHECK_STEP(s), #a, #e) 695 #define T_step_assert_eq_ptr(s, a, e) \ 696 T_flags_eq_ptr(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e) 698 #define T_ne_ptr(a, e) T_flags_ne_ptr(a, e, 0, #a, #e) 699 #define T_assert_ne_ptr(a, e) T_flags_ne_ptr(a, e, T_CHECK_STOP, #a, #e) 700 #define T_quiet_ne_ptr(a, e) T_flags_ne_ptr(a, e, T_CHECK_QUIET, #a, #e) 701 #define T_step_ne_ptr(s, a, e) T_flags_ne_ptr(a, e, T_CHECK_STEP(s), #a, #e) 702 #define T_step_assert_ne_ptr(s, a, e) \ 703 T_flags_ne_ptr(a, e, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e) 705 #define T_null(a) T_flags_null(a, 0, #a) 706 #define T_assert_null(a) T_flags_null(a, T_CHECK_STOP, #a) 707 #define T_quiet_null(a) T_flags_null(a, T_CHECK_QUIET, #a) 708 #define T_step_null(s, a) T_flags_null(a, T_CHECK_STEP(s), #a) 709 #define T_step_assert_null(s, a) \ 710 T_flags_null(a, T_CHECK_STEP(s) | T_CHECK_STOP, #a) 712 #define T_not_null(a) T_flags_not_null(a, 0, #a) 713 #define T_assert_not_null(a) T_flags_not_null(a, T_CHECK_STOP, #a) 714 #define T_quiet_not_null(a) T_flags_not_null(a, T_CHECK_QUIET, #a) 715 #define T_step_not_null(s, a) T_flags_not_null(a, T_CHECK_STEP(s), #a) 716 #define T_step_assert_not_null(s, a) \ 717 T_flags_not_null(a, T_CHECK_STEP(s) | T_CHECK_STOP, #a) 731 #define T_eq_mem(a, e, n) T_flags_eq_mem(a, e, n, 0, #a, #e, #n) 732 #define T_assert_eq_mem(a, e, n) \ 733 T_flags_eq_mem(a, e, n, T_CHECK_STOP, #a, #e, #n) 734 #define T_quiet_eq_mem(a, e, n) \ 735 T_flags_eq_mem(a, e, n, T_CHECK_QUIET, #a, #e, #n) 736 #define T_step_eq_mem(s, a, e, n) \ 737 T_flags_eq_mem(a, e, n, T_CHECK_STEP(s), #a, #e, #n) 738 #define T_step_assert_eq_mem(s, a, e, n) \ 739 T_flags_eq_mem(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e, #n) 741 #define T_ne_mem(a, e, n) T_flags_ne_mem(a, e, n, 0, #a, #e, #n) 742 #define T_assert_ne_mem(a, e, n) \ 743 T_flags_ne_mem(a, e, n, T_CHECK_STOP, #a, #e, #n) 744 #define T_quiet_ne_mem(a, e, n) \ 745 T_flags_ne_mem(a, e, n, T_CHECK_QUIET, #a, #e, #n) 746 #define T_step_ne_mem(s, a, e, n) \ 747 T_flags_ne_mem(a, e, n, T_CHECK_STEP(s), #a, #e, #n) 748 #define T_step_assert_ne_mem(s, a, e, n) \ 749 T_flags_ne_mem(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP, #a, #e, #n) 764 #define T_eq_str(a, e) T_flags_eq_str(a, e, 0) 765 #define T_assert_eq_str(a, e) T_flags_eq_str(a, e, T_CHECK_STOP) 766 #define T_quiet_eq_str(a, e) T_flags_eq_str(a, e, T_CHECK_QUIET) 767 #define T_step_eq_str(s, a, e) T_flags_eq_str(a, e, T_CHECK_STEP(s)) 768 #define T_step_assert_eq_str(s, a, e) \ 769 T_flags_eq_str(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 771 #define T_ne_str(a, e) T_flags_ne_str(a, e, 0) 772 #define T_assert_ne_str(a, e) T_flags_ne_str(a, e, T_CHECK_STOP) 773 #define T_quiet_ne_str(a, e) T_flags_ne_str(a, e, T_CHECK_QUIET) 774 #define T_step_ne_str(s, a, e) T_flags_ne_str(a, e, T_CHECK_STEP(s)) 775 #define T_step_assert_ne_str(s, a, e) \ 776 T_flags_ne_str(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 778 #define T_eq_nstr(a, e, n) T_flags_eq_nstr(a, e, n, 0) 779 #define T_assert_eq_nstr(a, e, n) T_flags_eq_nstr(a, e, n, T_CHECK_STOP) 780 #define T_quiet_eq_nstr(a, e, n) T_flags_eq_nstr(a, e, n, T_CHECK_QUIET) 781 #define T_step_eq_nstr(s, a, e, n) T_flags_eq_nstr(a, e, n, T_CHECK_STEP(s)) 782 #define T_step_assert_eq_nstr(s, a, e, n) \ 783 T_flags_eq_nstr(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP) 785 #define T_ne_nstr(a, e, n) T_flags_ne_nstr(a, e, n, 0) 786 #define T_assert_ne_nstr(a, e, n) T_flags_ne_nstr(a, e, n, T_CHECK_STOP) 787 #define T_quiet_ne_nstr(a, e, n) T_flags_ne_nstr(a, e, n, T_CHECK_QUIET) 788 #define T_step_ne_nstr(s, a, e, n) T_flags_ne_nstr(a, e, n, T_CHECK_STEP(s)) 789 #define T_step_assert_ne_nstr(s, a, e, n) \ 790 T_flags_ne_nstr(a, e, n, T_CHECK_STEP(s) | T_CHECK_STOP) 804 #define T_eq_char(a, e) T_flags_eq_char(a, e, 0) 805 #define T_assert_eq_char(a, e) T_flags_eq_char(a, e, T_CHECK_STOP) 806 #define T_quiet_eq_char(a, e) T_flags_eq_char(a, e, T_CHECK_QUIET) 807 #define T_step_eq_char(s, a, e) T_flags_eq_char(a, e, T_CHECK_STEP(s)) 808 #define T_step_assert_eq_char(s, a, e) \ 809 T_flags_eq_char(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 811 #define T_ne_char(a, e) T_flags_ne_char(a, e, 0) 812 #define T_assert_ne_char(a, e) T_flags_ne_char(a, e, T_CHECK_STOP) 813 #define T_quiet_ne_char(a, e) T_flags_ne_char(a, e, T_CHECK_QUIET) 814 #define T_step_ne_char(s, a, e) T_flags_ne_char(a, e, T_CHECK_STEP(s)) 815 #define T_step_assert_ne_char(s, a, e) \ 816 T_flags_ne_char(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 830 #define T_eq_schar(a, e) T_flags_eq_int(a, e, 0) 831 #define T_assert_eq_schar(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 832 #define T_quiet_eq_schar(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 833 #define T_step_eq_schar(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 834 #define T_step_assert_eq_schar(s, a, e) \ 835 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 837 #define T_ne_schar(a, e) T_flags_ne_int(a, e, 0) 838 #define T_assert_ne_schar(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 839 #define T_quiet_ne_schar(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 840 #define T_step_ne_schar(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 841 #define T_step_assert_ne_schar(s, a, e) \ 842 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 844 #define T_ge_schar(a, e) T_flags_ge_int(a, e, 0) 845 #define T_assert_ge_schar(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 846 #define T_quiet_ge_schar(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 847 #define T_step_ge_schar(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 848 #define T_step_assert_ge_schar(s, a, e) \ 849 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 851 #define T_gt_schar(a, e) T_flags_gt_int(a, e, 0) 852 #define T_assert_gt_schar(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 853 #define T_quiet_gt_schar(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 854 #define T_step_gt_schar(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 855 #define T_step_assert_gt_schar(s, a, e) \ 856 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 858 #define T_le_schar(a, e) T_flags_le_int(a, e, 0) 859 #define T_assert_le_schar(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 860 #define T_quiet_le_schar(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 861 #define T_step_le_schar(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 862 #define T_step_assert_le_schar(s, a, e) \ 863 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 865 #define T_lt_schar(a, e) T_flags_lt_int(a, e, 0) 866 #define T_assert_lt_schar(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 867 #define T_quiet_lt_schar(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 868 #define T_step_lt_schar(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 869 #define T_step_assert_lt_schar(s, a, e) \ 870 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 884 #define T_eq_uchar(a, e) T_flags_eq_uint(a, e, 0) 885 #define T_assert_eq_uchar(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 886 #define T_quiet_eq_uchar(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 887 #define T_step_eq_uchar(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 888 #define T_step_assert_eq_uchar(s, a, e) \ 889 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 891 #define T_ne_uchar(a, e) T_flags_ne_uint(a, e, 0) 892 #define T_assert_ne_uchar(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 893 #define T_quiet_ne_uchar(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 894 #define T_step_ne_uchar(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 895 #define T_step_assert_ne_uchar(s, a, e) \ 896 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 898 #define T_ge_uchar(a, e) T_flags_ge_uint(a, e, 0) 899 #define T_assert_ge_uchar(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 900 #define T_quiet_ge_uchar(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 901 #define T_step_ge_uchar(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 902 #define T_step_assert_ge_uchar(s, a, e) \ 903 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 905 #define T_gt_uchar(a, e) T_flags_gt_uint(a, e, 0) 906 #define T_assert_gt_uchar(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 907 #define T_quiet_gt_uchar(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 908 #define T_step_gt_uchar(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 909 #define T_step_assert_gt_uchar(s, a, e) \ 910 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 912 #define T_le_uchar(a, e) T_flags_le_uint(a, e, 0) 913 #define T_assert_le_uchar(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 914 #define T_quiet_le_uchar(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 915 #define T_step_le_uchar(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 916 #define T_step_assert_le_uchar(s, a, e) \ 917 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 919 #define T_lt_uchar(a, e) T_flags_lt_uint(a, e, 0) 920 #define T_assert_lt_uchar(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 921 #define T_quiet_lt_uchar(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 922 #define T_step_lt_uchar(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 923 #define T_step_assert_lt_uchar(s, a, e) \ 924 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 938 #define T_eq_short(a, e) T_flags_eq_int(a, e, 0) 939 #define T_assert_eq_short(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 940 #define T_quiet_eq_short(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 941 #define T_step_eq_short(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 942 #define T_step_assert_eq_short(s, a, e) \ 943 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 945 #define T_ne_short(a, e) T_flags_ne_int(a, e, 0) 946 #define T_assert_ne_short(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 947 #define T_quiet_ne_short(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 948 #define T_step_ne_short(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 949 #define T_step_assert_ne_short(s, a, e) \ 950 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 952 #define T_ge_short(a, e) T_flags_ge_int(a, e, 0) 953 #define T_assert_ge_short(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 954 #define T_quiet_ge_short(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 955 #define T_step_ge_short(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 956 #define T_step_assert_ge_short(s, a, e) \ 957 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 959 #define T_gt_short(a, e) T_flags_gt_int(a, e, 0) 960 #define T_assert_gt_short(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 961 #define T_quiet_gt_short(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 962 #define T_step_gt_short(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 963 #define T_step_assert_gt_short(s, a, e) \ 964 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 966 #define T_le_short(a, e) T_flags_le_int(a, e, 0) 967 #define T_assert_le_short(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 968 #define T_quiet_le_short(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 969 #define T_step_le_short(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 970 #define T_step_assert_le_short(s, a, e) \ 971 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 973 #define T_lt_short(a, e) T_flags_lt_int(a, e, 0) 974 #define T_assert_lt_short(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 975 #define T_quiet_lt_short(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 976 #define T_step_lt_short(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 977 #define T_step_assert_lt_short(s, a, e) \ 978 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 992 #define T_eq_ushort(a, e) T_flags_eq_uint(a, e, 0) 993 #define T_assert_eq_ushort(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 994 #define T_quiet_eq_ushort(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 995 #define T_step_eq_ushort(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 996 #define T_step_assert_eq_ushort(s, a, e) \ 997 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 999 #define T_ne_ushort(a, e) T_flags_ne_uint(a, e, 0) 1000 #define T_assert_ne_ushort(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1001 #define T_quiet_ne_ushort(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1002 #define T_step_ne_ushort(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1003 #define T_step_assert_ne_ushort(s, a, e) \ 1004 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1006 #define T_ge_ushort(a, e) T_flags_ge_uint(a, e, 0) 1007 #define T_assert_ge_ushort(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1008 #define T_quiet_ge_ushort(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1009 #define T_step_ge_ushort(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1010 #define T_step_assert_ge_ushort(s, a, e) \ 1011 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1013 #define T_gt_ushort(a, e) T_flags_gt_uint(a, e, 0) 1014 #define T_assert_gt_ushort(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1015 #define T_quiet_gt_ushort(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1016 #define T_step_gt_ushort(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1017 #define T_step_assert_gt_ushort(s, a, e) \ 1018 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1020 #define T_le_ushort(a, e) T_flags_le_uint(a, e, 0) 1021 #define T_assert_le_ushort(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1022 #define T_quiet_le_ushort(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1023 #define T_step_le_ushort(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1024 #define T_step_assert_le_ushort(s, a, e) \ 1025 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1027 #define T_lt_ushort(a, e) T_flags_lt_uint(a, e, 0) 1028 #define T_assert_lt_ushort(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1029 #define T_quiet_lt_ushort(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1030 #define T_step_lt_ushort(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1031 #define T_step_assert_lt_ushort(s, a, e) \ 1032 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1046 #define T_eq_int(a, e) T_flags_eq_int(a, e, 0) 1047 #define T_assert_eq_int(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 1048 #define T_quiet_eq_int(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 1049 #define T_step_eq_int(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 1050 #define T_step_assert_eq_int(s, a, e) \ 1051 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1053 #define T_ne_int(a, e) T_flags_ne_int(a, e, 0) 1054 #define T_assert_ne_int(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 1055 #define T_quiet_ne_int(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 1056 #define T_step_ne_int(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 1057 #define T_step_assert_ne_int(s, a, e) \ 1058 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1060 #define T_ge_int(a, e) T_flags_ge_int(a, e, 0) 1061 #define T_assert_ge_int(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 1062 #define T_quiet_ge_int(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 1063 #define T_step_ge_int(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 1064 #define T_step_assert_ge_int(s, a, e) \ 1065 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1067 #define T_gt_int(a, e) T_flags_gt_int(a, e, 0) 1068 #define T_assert_gt_int(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 1069 #define T_quiet_gt_int(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 1070 #define T_step_gt_int(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 1071 #define T_step_assert_gt_int(s, a, e) \ 1072 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1074 #define T_le_int(a, e) T_flags_le_int(a, e, 0) 1075 #define T_assert_le_int(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 1076 #define T_quiet_le_int(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 1077 #define T_step_le_int(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 1078 #define T_step_assert_le_int(s, a, e) \ 1079 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1081 #define T_lt_int(a, e) T_flags_lt_int(a, e, 0) 1082 #define T_assert_lt_int(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 1083 #define T_quiet_lt_int(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 1084 #define T_step_lt_int(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 1085 #define T_step_assert_lt_int(s, a, e) \ 1086 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1100 #define T_eq_uint(a, e) T_flags_eq_uint(a, e, 0) 1101 #define T_assert_eq_uint(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 1102 #define T_quiet_eq_uint(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 1103 #define T_step_eq_uint(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 1104 #define T_step_assert_eq_uint(s, a, e) \ 1105 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1107 #define T_ne_uint(a, e) T_flags_ne_uint(a, e, 0) 1108 #define T_assert_ne_uint(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1109 #define T_quiet_ne_uint(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1110 #define T_step_ne_uint(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1111 #define T_step_assert_ne_uint(s, a, e) \ 1112 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1114 #define T_ge_uint(a, e) T_flags_ge_uint(a, e, 0) 1115 #define T_assert_ge_uint(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1116 #define T_quiet_ge_uint(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1117 #define T_step_ge_uint(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1118 #define T_step_assert_ge_uint(s, a, e) \ 1119 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1121 #define T_gt_uint(a, e) T_flags_gt_uint(a, e, 0) 1122 #define T_assert_gt_uint(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1123 #define T_quiet_gt_uint(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1124 #define T_step_gt_uint(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1125 #define T_step_assert_gt_uint(s, a, e) \ 1126 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1128 #define T_le_uint(a, e) T_flags_le_uint(a, e, 0) 1129 #define T_assert_le_uint(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1130 #define T_quiet_le_uint(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1131 #define T_step_le_uint(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1132 #define T_step_assert_le_uint(s, a, e) \ 1133 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1135 #define T_lt_uint(a, e) T_flags_lt_uint(a, e, 0) 1136 #define T_assert_lt_uint(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1137 #define T_quiet_lt_uint(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1138 #define T_step_lt_uint(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1139 #define T_step_assert_lt_uint(s, a, e) \ 1140 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1154 #define T_eq_long(a, e) T_flags_eq_long(a, e, 0) 1155 #define T_assert_eq_long(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1156 #define T_quiet_eq_long(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1157 #define T_step_eq_long(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1158 #define T_step_assert_eq_long(s, a, e) \ 1159 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1161 #define T_ne_long(a, e) T_flags_ne_long(a, e, 0) 1162 #define T_assert_ne_long(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1163 #define T_quiet_ne_long(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1164 #define T_step_ne_long(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1165 #define T_step_assert_ne_long(s, a, e) \ 1166 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1168 #define T_ge_long(a, e) T_flags_ge_long(a, e, 0) 1169 #define T_assert_ge_long(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1170 #define T_quiet_ge_long(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1171 #define T_step_ge_long(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1172 #define T_step_assert_ge_long(s, a, e) \ 1173 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1175 #define T_gt_long(a, e) T_flags_gt_long(a, e, 0) 1176 #define T_assert_gt_long(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1177 #define T_quiet_gt_long(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1178 #define T_step_gt_long(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1179 #define T_step_assert_gt_long(s, a, e) \ 1180 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1182 #define T_le_long(a, e) T_flags_le_long(a, e, 0) 1183 #define T_assert_le_long(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1184 #define T_quiet_le_long(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1185 #define T_step_le_long(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1186 #define T_step_assert_le_long(s, a, e) \ 1187 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1189 #define T_lt_long(a, e) T_flags_lt_long(a, e, 0) 1190 #define T_assert_lt_long(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1191 #define T_quiet_lt_long(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1192 #define T_step_lt_long(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1193 #define T_step_assert_lt_long(s, a, e) \ 1194 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1208 #define T_eq_ulong(a, e) T_flags_eq_ulong(a, e, 0) 1209 #define T_assert_eq_ulong(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1210 #define T_quiet_eq_ulong(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1211 #define T_step_eq_ulong(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1212 #define T_step_assert_eq_ulong(s, a, e) \ 1213 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1215 #define T_ne_ulong(a, e) T_flags_ne_ulong(a, e, 0) 1216 #define T_assert_ne_ulong(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1217 #define T_quiet_ne_ulong(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1218 #define T_step_ne_ulong(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1219 #define T_step_assert_ne_ulong(s, a, e) \ 1220 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1222 #define T_ge_ulong(a, e) T_flags_ge_ulong(a, e, 0) 1223 #define T_assert_ge_ulong(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1224 #define T_quiet_ge_ulong(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1225 #define T_step_ge_ulong(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1226 #define T_step_assert_ge_ulong(s, a, e) \ 1227 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1229 #define T_gt_ulong(a, e) T_flags_gt_ulong(a, e, 0) 1230 #define T_assert_gt_ulong(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1231 #define T_quiet_gt_ulong(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1232 #define T_step_gt_ulong(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1233 #define T_step_assert_gt_ulong(s, a, e) \ 1234 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1236 #define T_le_ulong(a, e) T_flags_le_ulong(a, e, 0) 1237 #define T_assert_le_ulong(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1238 #define T_quiet_le_ulong(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1239 #define T_step_le_ulong(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1240 #define T_step_assert_le_ulong(s, a, e) \ 1241 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1243 #define T_lt_ulong(a, e) T_flags_lt_ulong(a, e, 0) 1244 #define T_assert_lt_ulong(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 1245 #define T_quiet_lt_ulong(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 1246 #define T_step_lt_ulong(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 1247 #define T_step_assert_lt_ulong(s, a, e) \ 1248 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1262 #define T_eq_ll(a, e) T_flags_eq_ll(a, e, 0) 1263 #define T_assert_eq_ll(a, e) T_flags_eq_ll(a, e, T_CHECK_STOP) 1264 #define T_quiet_eq_ll(a, e) T_flags_eq_ll(a, e, T_CHECK_QUIET) 1265 #define T_step_eq_ll(s, a, e) T_flags_eq_ll(a, e, T_CHECK_STEP(s)) 1266 #define T_step_assert_eq_ll(s, a, e) \ 1267 T_flags_eq_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1269 #define T_ne_ll(a, e) T_flags_ne_ll(a, e, 0) 1270 #define T_assert_ne_ll(a, e) T_flags_ne_ll(a, e, T_CHECK_STOP) 1271 #define T_quiet_ne_ll(a, e) T_flags_ne_ll(a, e, T_CHECK_QUIET) 1272 #define T_step_ne_ll(s, a, e) T_flags_ne_ll(a, e, T_CHECK_STEP(s)) 1273 #define T_step_assert_ne_ll(s, a, e) \ 1274 T_flags_ne_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1276 #define T_ge_ll(a, e) T_flags_ge_ll(a, e, 0) 1277 #define T_assert_ge_ll(a, e) T_flags_ge_ll(a, e, T_CHECK_STOP) 1278 #define T_quiet_ge_ll(a, e) T_flags_ge_ll(a, e, T_CHECK_QUIET) 1279 #define T_step_ge_ll(s, a, e) T_flags_ge_ll(a, e, T_CHECK_STEP(s)) 1280 #define T_step_assert_ge_ll(s, a, e) \ 1281 T_flags_ge_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1283 #define T_gt_ll(a, e) T_flags_gt_ll(a, e, 0) 1284 #define T_assert_gt_ll(a, e) T_flags_gt_ll(a, e, T_CHECK_STOP) 1285 #define T_quiet_gt_ll(a, e) T_flags_gt_ll(a, e, T_CHECK_QUIET) 1286 #define T_step_gt_ll(s, a, e) T_flags_gt_ll(a, e, T_CHECK_STEP(s)) 1287 #define T_step_assert_gt_ll(s, a, e) \ 1288 T_flags_gt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1290 #define T_le_ll(a, e) T_flags_le_ll(a, e, 0) 1291 #define T_assert_le_ll(a, e) T_flags_le_ll(a, e, T_CHECK_STOP) 1292 #define T_quiet_le_ll(a, e) T_flags_le_ll(a, e, T_CHECK_QUIET) 1293 #define T_step_le_ll(s, a, e) T_flags_le_ll(a, e, T_CHECK_STEP(s)) 1294 #define T_step_assert_le_ll(s, a, e) \ 1295 T_flags_le_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1297 #define T_lt_ll(a, e) T_flags_lt_ll(a, e, 0) 1298 #define T_assert_lt_ll(a, e) T_flags_lt_ll(a, e, T_CHECK_STOP) 1299 #define T_quiet_lt_ll(a, e) T_flags_lt_ll(a, e, T_CHECK_QUIET) 1300 #define T_step_lt_ll(s, a, e) T_flags_lt_ll(a, e, T_CHECK_STEP(s)) 1301 #define T_step_assert_lt_ll(s, a, e) \ 1302 T_flags_lt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1316 #define T_eq_ull(a, e) T_flags_eq_ull(a, e, 0) 1317 #define T_assert_eq_ull(a, e) T_flags_eq_ull(a, e, T_CHECK_STOP) 1318 #define T_quiet_eq_ull(a, e) T_flags_eq_ull(a, e, T_CHECK_QUIET) 1319 #define T_step_eq_ull(s, a, e) T_flags_eq_ull(a, e, T_CHECK_STEP(s)) 1320 #define T_step_assert_eq_ull(s, a, e) \ 1321 T_flags_eq_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1323 #define T_ne_ull(a, e) T_flags_ne_ull(a, e, 0) 1324 #define T_assert_ne_ull(a, e) T_flags_ne_ull(a, e, T_CHECK_STOP) 1325 #define T_quiet_ne_ull(a, e) T_flags_ne_ull(a, e, T_CHECK_QUIET) 1326 #define T_step_ne_ull(s, a, e) T_flags_ne_ull(a, e, T_CHECK_STEP(s)) 1327 #define T_step_assert_ne_ull(s, a, e) \ 1328 T_flags_ne_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1330 #define T_ge_ull(a, e) T_flags_ge_ull(a, e, 0) 1331 #define T_assert_ge_ull(a, e) T_flags_ge_ull(a, e, T_CHECK_STOP) 1332 #define T_quiet_ge_ull(a, e) T_flags_ge_ull(a, e, T_CHECK_QUIET) 1333 #define T_step_ge_ull(s, a, e) T_flags_ge_ull(a, e, T_CHECK_STEP(s)) 1334 #define T_step_assert_ge_ull(s, a, e) \ 1335 T_flags_ge_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1337 #define T_gt_ull(a, e) T_flags_gt_ull(a, e, 0) 1338 #define T_assert_gt_ull(a, e) T_flags_gt_ull(a, e, T_CHECK_STOP) 1339 #define T_quiet_gt_ull(a, e) T_flags_gt_ull(a, e, T_CHECK_QUIET) 1340 #define T_step_gt_ull(s, a, e) T_flags_gt_ull(a, e, T_CHECK_STEP(s)) 1341 #define T_step_assert_gt_ull(s, a, e) \ 1342 T_flags_gt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1344 #define T_le_ull(a, e) T_flags_le_ull(a, e, 0) 1345 #define T_assert_le_ull(a, e) T_flags_le_ull(a, e, T_CHECK_STOP) 1346 #define T_quiet_le_ull(a, e) T_flags_le_ull(a, e, T_CHECK_QUIET) 1347 #define T_step_le_ull(s, a, e) T_flags_le_ull(a, e, T_CHECK_STEP(s)) 1348 #define T_step_assert_le_ull(s, a, e) \ 1349 T_flags_le_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1351 #define T_lt_ull(a, e) T_flags_lt_ull(a, e, 0) 1352 #define T_assert_lt_ull(a, e) T_flags_lt_ull(a, e, T_CHECK_STOP) 1353 #define T_quiet_lt_ull(a, e) T_flags_lt_ull(a, e, T_CHECK_QUIET) 1354 #define T_step_lt_ull(s, a, e) T_flags_lt_ull(a, e, T_CHECK_STEP(s)) 1355 #define T_step_assert_lt_ull(s, a, e) \ 1356 T_flags_lt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1370 #define T_eq_i8(a, e) T_flags_eq_int(a, e, 0) 1371 #define T_assert_eq_i8(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 1372 #define T_quiet_eq_i8(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 1373 #define T_step_eq_i8(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 1374 #define T_step_assert_eq_i8(s, a, e) \ 1375 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1377 #define T_ne_i8(a, e) T_flags_ne_int(a, e, 0) 1378 #define T_assert_ne_i8(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 1379 #define T_quiet_ne_i8(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 1380 #define T_step_ne_i8(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 1381 #define T_step_assert_ne_i8(s, a, e) \ 1382 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1384 #define T_ge_i8(a, e) T_flags_ge_int(a, e, 0) 1385 #define T_assert_ge_i8(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 1386 #define T_quiet_ge_i8(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 1387 #define T_step_ge_i8(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 1388 #define T_step_assert_ge_i8(s, a, e) \ 1389 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1391 #define T_gt_i8(a, e) T_flags_gt_int(a, e, 0) 1392 #define T_assert_gt_i8(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 1393 #define T_quiet_gt_i8(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 1394 #define T_step_gt_i8(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 1395 #define T_step_assert_gt_i8(s, a, e) \ 1396 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1398 #define T_le_i8(a, e) T_flags_le_int(a, e, 0) 1399 #define T_assert_le_i8(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 1400 #define T_quiet_le_i8(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 1401 #define T_step_le_i8(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 1402 #define T_step_assert_le_i8(s, a, e) \ 1403 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1405 #define T_lt_i8(a, e) T_flags_lt_int(a, e, 0) 1406 #define T_assert_lt_i8(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 1407 #define T_quiet_lt_i8(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 1408 #define T_step_lt_i8(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 1409 #define T_step_assert_lt_i8(s, a, e) \ 1410 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1424 #define T_eq_u8(a, e) T_flags_eq_uint(a, e, 0) 1425 #define T_assert_eq_u8(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 1426 #define T_quiet_eq_u8(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 1427 #define T_step_eq_u8(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 1428 #define T_step_assert_eq_u8(s, a, e) \ 1429 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1431 #define T_ne_u8(a, e) T_flags_ne_uint(a, e, 0) 1432 #define T_assert_ne_u8(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1433 #define T_quiet_ne_u8(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1434 #define T_step_ne_u8(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1435 #define T_step_assert_ne_u8(s, a, e) \ 1436 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1438 #define T_ge_u8(a, e) T_flags_ge_uint(a, e, 0) 1439 #define T_assert_ge_u8(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1440 #define T_quiet_ge_u8(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1441 #define T_step_ge_u8(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1442 #define T_step_assert_ge_u8(s, a, e) \ 1443 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1445 #define T_gt_u8(a, e) T_flags_gt_uint(a, e, 0) 1446 #define T_assert_gt_u8(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1447 #define T_quiet_gt_u8(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1448 #define T_step_gt_u8(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1449 #define T_step_assert_gt_u8(s, a, e) \ 1450 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1452 #define T_le_u8(a, e) T_flags_le_uint(a, e, 0) 1453 #define T_assert_le_u8(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1454 #define T_quiet_le_u8(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1455 #define T_step_le_u8(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1456 #define T_step_assert_le_u8(s, a, e) \ 1457 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1459 #define T_lt_u8(a, e) T_flags_lt_uint(a, e, 0) 1460 #define T_assert_lt_u8(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1461 #define T_quiet_lt_u8(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1462 #define T_step_lt_u8(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1463 #define T_step_assert_lt_u8(s, a, e) \ 1464 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1478 #define T_eq_i16(a, e) T_flags_eq_int(a, e, 0) 1479 #define T_assert_eq_i16(a, e) T_flags_eq_int(a, e, T_CHECK_STOP) 1480 #define T_quiet_eq_i16(a, e) T_flags_eq_int(a, e, T_CHECK_QUIET) 1481 #define T_step_eq_i16(s, a, e) T_flags_eq_int(a, e, T_CHECK_STEP(s)) 1482 #define T_step_assert_eq_i16(s, a, e) \ 1483 T_flags_eq_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1485 #define T_ne_i16(a, e) T_flags_ne_int(a, e, 0) 1486 #define T_assert_ne_i16(a, e) T_flags_ne_int(a, e, T_CHECK_STOP) 1487 #define T_quiet_ne_i16(a, e) T_flags_ne_int(a, e, T_CHECK_QUIET) 1488 #define T_step_ne_i16(s, a, e) T_flags_ne_int(a, e, T_CHECK_STEP(s)) 1489 #define T_step_assert_ne_i16(s, a, e) \ 1490 T_flags_ne_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1492 #define T_ge_i16(a, e) T_flags_ge_int(a, e, 0) 1493 #define T_assert_ge_i16(a, e) T_flags_ge_int(a, e, T_CHECK_STOP) 1494 #define T_quiet_ge_i16(a, e) T_flags_ge_int(a, e, T_CHECK_QUIET) 1495 #define T_step_ge_i16(s, a, e) T_flags_ge_int(a, e, T_CHECK_STEP(s)) 1496 #define T_step_assert_ge_i16(s, a, e) \ 1497 T_flags_ge_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1499 #define T_gt_i16(a, e) T_flags_gt_int(a, e, 0) 1500 #define T_assert_gt_i16(a, e) T_flags_gt_int(a, e, T_CHECK_STOP) 1501 #define T_quiet_gt_i16(a, e) T_flags_gt_int(a, e, T_CHECK_QUIET) 1502 #define T_step_gt_i16(s, a, e) T_flags_gt_int(a, e, T_CHECK_STEP(s)) 1503 #define T_step_assert_gt_i16(s, a, e) \ 1504 T_flags_gt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1506 #define T_le_i16(a, e) T_flags_le_int(a, e, 0) 1507 #define T_assert_le_i16(a, e) T_flags_le_int(a, e, T_CHECK_STOP) 1508 #define T_quiet_le_i16(a, e) T_flags_le_int(a, e, T_CHECK_QUIET) 1509 #define T_step_le_i16(s, a, e) T_flags_le_int(a, e, T_CHECK_STEP(s)) 1510 #define T_step_assert_le_i16(s, a, e) \ 1511 T_flags_le_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1513 #define T_lt_i16(a, e) T_flags_lt_int(a, e, 0) 1514 #define T_assert_lt_i16(a, e) T_flags_lt_int(a, e, T_CHECK_STOP) 1515 #define T_quiet_lt_i16(a, e) T_flags_lt_int(a, e, T_CHECK_QUIET) 1516 #define T_step_lt_i16(s, a, e) T_flags_lt_int(a, e, T_CHECK_STEP(s)) 1517 #define T_step_assert_lt_i16(s, a, e) \ 1518 T_flags_lt_int(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1532 #define T_eq_u16(a, e) T_flags_eq_uint(a, e, 0) 1533 #define T_assert_eq_u16(a, e) T_flags_eq_uint(a, e, T_CHECK_STOP) 1534 #define T_quiet_eq_u16(a, e) T_flags_eq_uint(a, e, T_CHECK_QUIET) 1535 #define T_step_eq_u16(s, a, e) T_flags_eq_uint(a, e, T_CHECK_STEP(s)) 1536 #define T_step_assert_eq_u16(s, a, e) \ 1537 T_flags_eq_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1539 #define T_ne_u16(a, e) T_flags_ne_uint(a, e, 0) 1540 #define T_assert_ne_u16(a, e) T_flags_ne_uint(a, e, T_CHECK_STOP) 1541 #define T_quiet_ne_u16(a, e) T_flags_ne_uint(a, e, T_CHECK_QUIET) 1542 #define T_step_ne_u16(s, a, e) T_flags_ne_uint(a, e, T_CHECK_STEP(s)) 1543 #define T_step_assert_ne_u16(s, a, e) \ 1544 T_flags_ne_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1546 #define T_ge_u16(a, e) T_flags_ge_uint(a, e, 0) 1547 #define T_assert_ge_u16(a, e) T_flags_ge_uint(a, e, T_CHECK_STOP) 1548 #define T_quiet_ge_u16(a, e) T_flags_ge_uint(a, e, T_CHECK_QUIET) 1549 #define T_step_ge_u16(s, a, e) T_flags_ge_uint(a, e, T_CHECK_STEP(s)) 1550 #define T_step_assert_ge_u16(s, a, e) \ 1551 T_flags_ge_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1553 #define T_gt_u16(a, e) T_flags_gt_uint(a, e, 0) 1554 #define T_assert_gt_u16(a, e) T_flags_gt_uint(a, e, T_CHECK_STOP) 1555 #define T_quiet_gt_u16(a, e) T_flags_gt_uint(a, e, T_CHECK_QUIET) 1556 #define T_step_gt_u16(s, a, e) T_flags_gt_uint(a, e, T_CHECK_STEP(s)) 1557 #define T_step_assert_gt_u16(s, a, e) \ 1558 T_flags_gt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1560 #define T_le_u16(a, e) T_flags_le_uint(a, e, 0) 1561 #define T_assert_le_u16(a, e) T_flags_le_uint(a, e, T_CHECK_STOP) 1562 #define T_quiet_le_u16(a, e) T_flags_le_uint(a, e, T_CHECK_QUIET) 1563 #define T_step_le_u16(s, a, e) T_flags_le_uint(a, e, T_CHECK_STEP(s)) 1564 #define T_step_assert_le_u16(s, a, e) \ 1565 T_flags_le_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1567 #define T_lt_u16(a, e) T_flags_lt_uint(a, e, 0) 1568 #define T_assert_lt_u16(a, e) T_flags_lt_uint(a, e, T_CHECK_STOP) 1569 #define T_quiet_lt_u16(a, e) T_flags_lt_uint(a, e, T_CHECK_QUIET) 1570 #define T_step_lt_u16(s, a, e) T_flags_lt_uint(a, e, T_CHECK_STEP(s)) 1571 #define T_step_assert_lt_u16(s, a, e) \ 1572 T_flags_lt_uint(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1586 #define T_eq_i32(a, e) T_flags_eq_long(a, e, 0) 1587 #define T_assert_eq_i32(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1588 #define T_quiet_eq_i32(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1589 #define T_step_eq_i32(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1590 #define T_step_assert_eq_i32(s, a, e) \ 1591 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1593 #define T_ne_i32(a, e) T_flags_ne_long(a, e, 0) 1594 #define T_assert_ne_i32(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1595 #define T_quiet_ne_i32(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1596 #define T_step_ne_i32(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1597 #define T_step_assert_ne_i32(s, a, e) \ 1598 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1600 #define T_ge_i32(a, e) T_flags_ge_long(a, e, 0) 1601 #define T_assert_ge_i32(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1602 #define T_quiet_ge_i32(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1603 #define T_step_ge_i32(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1604 #define T_step_assert_ge_i32(s, a, e) \ 1605 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1607 #define T_gt_i32(a, e) T_flags_gt_long(a, e, 0) 1608 #define T_assert_gt_i32(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1609 #define T_quiet_gt_i32(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1610 #define T_step_gt_i32(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1611 #define T_step_assert_gt_i32(s, a, e) \ 1612 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1614 #define T_le_i32(a, e) T_flags_le_long(a, e, 0) 1615 #define T_assert_le_i32(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1616 #define T_quiet_le_i32(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1617 #define T_step_le_i32(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1618 #define T_step_assert_le_i32(s, a, e) \ 1619 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1621 #define T_lt_i32(a, e) T_flags_lt_long(a, e, 0) 1622 #define T_assert_lt_i32(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1623 #define T_quiet_lt_i32(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1624 #define T_step_lt_i32(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1625 #define T_step_assert_lt_i32(s, a, e) \ 1626 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1640 #define T_eq_u32(a, e) T_flags_eq_ulong(a, e, 0) 1641 #define T_assert_eq_u32(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1642 #define T_quiet_eq_u32(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1643 #define T_step_eq_u32(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1644 #define T_step_assert_eq_u32(s, a, e) \ 1645 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1647 #define T_ne_u32(a, e) T_flags_ne_ulong(a, e, 0) 1648 #define T_assert_ne_u32(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1649 #define T_quiet_ne_u32(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1650 #define T_step_ne_u32(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1651 #define T_step_assert_ne_u32(s, a, e) \ 1652 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1654 #define T_ge_u32(a, e) T_flags_ge_ulong(a, e, 0) 1655 #define T_assert_ge_u32(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1656 #define T_quiet_ge_u32(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1657 #define T_step_ge_u32(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1658 #define T_step_assert_ge_u32(s, a, e) \ 1659 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1661 #define T_gt_u32(a, e) T_flags_gt_ulong(a, e, 0) 1662 #define T_assert_gt_u32(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1663 #define T_quiet_gt_u32(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1664 #define T_step_gt_u32(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1665 #define T_step_assert_gt_u32(s, a, e) \ 1666 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1668 #define T_le_u32(a, e) T_flags_le_ulong(a, e, 0) 1669 #define T_assert_le_u32(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1670 #define T_quiet_le_u32(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1671 #define T_step_le_u32(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1672 #define T_step_assert_le_u32(s, a, e) \ 1673 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1675 #define T_lt_u32(a, e) T_flags_lt_ulong(a, e, 0) 1676 #define T_assert_lt_u32(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 1677 #define T_quiet_lt_u32(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 1678 #define T_step_lt_u32(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 1679 #define T_step_assert_lt_u32(s, a, e) \ 1680 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1694 #define T_eq_i64(a, e) T_flags_eq_ll(a, e, 0) 1695 #define T_assert_eq_i64(a, e) T_flags_eq_ll(a, e, T_CHECK_STOP) 1696 #define T_quiet_eq_i64(a, e) T_flags_eq_ll(a, e, T_CHECK_QUIET) 1697 #define T_step_eq_i64(s, a, e) T_flags_eq_ll(a, e, T_CHECK_STEP(s)) 1698 #define T_step_assert_eq_i64(s, a, e) \ 1699 T_flags_eq_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1701 #define T_ne_i64(a, e) T_flags_ne_ll(a, e, 0) 1702 #define T_assert_ne_i64(a, e) T_flags_ne_ll(a, e, T_CHECK_STOP) 1703 #define T_quiet_ne_i64(a, e) T_flags_ne_ll(a, e, T_CHECK_QUIET) 1704 #define T_step_ne_i64(s, a, e) T_flags_ne_ll(a, e, T_CHECK_STEP(s)) 1705 #define T_step_assert_ne_i64(s, a, e) \ 1706 T_flags_ne_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1708 #define T_ge_i64(a, e) T_flags_ge_ll(a, e, 0) 1709 #define T_assert_ge_i64(a, e) T_flags_ge_ll(a, e, T_CHECK_STOP) 1710 #define T_quiet_ge_i64(a, e) T_flags_ge_ll(a, e, T_CHECK_QUIET) 1711 #define T_step_ge_i64(s, a, e) T_flags_ge_ll(a, e, T_CHECK_STEP(s)) 1712 #define T_step_assert_ge_i64(s, a, e) \ 1713 T_flags_ge_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1715 #define T_gt_i64(a, e) T_flags_gt_ll(a, e, 0) 1716 #define T_assert_gt_i64(a, e) T_flags_gt_ll(a, e, T_CHECK_STOP) 1717 #define T_quiet_gt_i64(a, e) T_flags_gt_ll(a, e, T_CHECK_QUIET) 1718 #define T_step_gt_i64(s, a, e) T_flags_gt_ll(a, e, T_CHECK_STEP(s)) 1719 #define T_step_assert_gt_i64(s, a, e) \ 1720 T_flags_gt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1722 #define T_le_i64(a, e) T_flags_le_ll(a, e, 0) 1723 #define T_assert_le_i64(a, e) T_flags_le_ll(a, e, T_CHECK_STOP) 1724 #define T_quiet_le_i64(a, e) T_flags_le_ll(a, e, T_CHECK_QUIET) 1725 #define T_step_le_i64(s, a, e) T_flags_le_ll(a, e, T_CHECK_STEP(s)) 1726 #define T_step_assert_le_i64(s, a, e) \ 1727 T_flags_le_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1729 #define T_lt_i64(a, e) T_flags_lt_ll(a, e, 0) 1730 #define T_assert_lt_i64(a, e) T_flags_lt_ll(a, e, T_CHECK_STOP) 1731 #define T_quiet_lt_i64(a, e) T_flags_lt_ll(a, e, T_CHECK_QUIET) 1732 #define T_step_lt_i64(s, a, e) T_flags_lt_ll(a, e, T_CHECK_STEP(s)) 1733 #define T_step_assert_lt_i64(s, a, e) \ 1734 T_flags_lt_ll(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1748 #define T_eq_u64(a, e) T_flags_eq_ull(a, e, 0) 1749 #define T_assert_eq_u64(a, e) T_flags_eq_ull(a, e, T_CHECK_STOP) 1750 #define T_quiet_eq_u64(a, e) T_flags_eq_ull(a, e, T_CHECK_QUIET) 1751 #define T_step_eq_u64(s, a, e) T_flags_eq_ull(a, e, T_CHECK_STEP(s)) 1752 #define T_step_assert_eq_u64(s, a, e) \ 1753 T_flags_eq_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1755 #define T_ne_u64(a, e) T_flags_ne_ull(a, e, 0) 1756 #define T_assert_ne_u64(a, e) T_flags_ne_ull(a, e, T_CHECK_STOP) 1757 #define T_quiet_ne_u64(a, e) T_flags_ne_ull(a, e, T_CHECK_QUIET) 1758 #define T_step_ne_u64(s, a, e) T_flags_ne_ull(a, e, T_CHECK_STEP(s)) 1759 #define T_step_assert_ne_u64(s, a, e) \ 1760 T_flags_ne_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1762 #define T_ge_u64(a, e) T_flags_ge_ull(a, e, 0) 1763 #define T_assert_ge_u64(a, e) T_flags_ge_ull(a, e, T_CHECK_STOP) 1764 #define T_quiet_ge_u64(a, e) T_flags_ge_ull(a, e, T_CHECK_QUIET) 1765 #define T_step_ge_u64(s, a, e) T_flags_ge_ull(a, e, T_CHECK_STEP(s)) 1766 #define T_step_assert_ge_u64(s, a, e) \ 1767 T_flags_ge_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1769 #define T_gt_u64(a, e) T_flags_gt_ull(a, e, 0) 1770 #define T_assert_gt_u64(a, e) T_flags_gt_ull(a, e, T_CHECK_STOP) 1771 #define T_quiet_gt_u64(a, e) T_flags_gt_ull(a, e, T_CHECK_QUIET) 1772 #define T_step_gt_u64(s, a, e) T_flags_gt_ull(a, e, T_CHECK_STEP(s)) 1773 #define T_step_assert_gt_u64(s, a, e) \ 1774 T_flags_gt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1776 #define T_le_u64(a, e) T_flags_le_ull(a, e, 0) 1777 #define T_assert_le_u64(a, e) T_flags_le_ull(a, e, T_CHECK_STOP) 1778 #define T_quiet_le_u64(a, e) T_flags_le_ull(a, e, T_CHECK_QUIET) 1779 #define T_step_le_u64(s, a, e) T_flags_le_ull(a, e, T_CHECK_STEP(s)) 1780 #define T_step_assert_le_u64(s, a, e) \ 1781 T_flags_le_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1783 #define T_lt_u64(a, e) T_flags_lt_ull(a, e, 0) 1784 #define T_assert_lt_u64(a, e) T_flags_lt_ull(a, e, T_CHECK_STOP) 1785 #define T_quiet_lt_u64(a, e) T_flags_lt_ull(a, e, T_CHECK_QUIET) 1786 #define T_step_lt_u64(s, a, e) T_flags_lt_ull(a, e, T_CHECK_STEP(s)) 1787 #define T_step_assert_lt_u64(s, a, e) \ 1788 T_flags_lt_ull(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1802 #define T_eq_iptr(a, e) T_flags_eq_long(a, e, 0) 1803 #define T_assert_eq_iptr(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1804 #define T_quiet_eq_iptr(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1805 #define T_step_eq_iptr(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1806 #define T_step_assert_eq_iptr(s, a, e) \ 1807 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1809 #define T_ne_iptr(a, e) T_flags_ne_long(a, e, 0) 1810 #define T_assert_ne_iptr(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1811 #define T_quiet_ne_iptr(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1812 #define T_step_ne_iptr(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1813 #define T_step_assert_ne_iptr(s, a, e) \ 1814 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1816 #define T_ge_iptr(a, e) T_flags_ge_long(a, e, 0) 1817 #define T_assert_ge_iptr(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1818 #define T_quiet_ge_iptr(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1819 #define T_step_ge_iptr(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1820 #define T_step_assert_ge_iptr(s, a, e) \ 1821 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1823 #define T_gt_iptr(a, e) T_flags_gt_long(a, e, 0) 1824 #define T_assert_gt_iptr(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1825 #define T_quiet_gt_iptr(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1826 #define T_step_gt_iptr(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1827 #define T_step_assert_gt_iptr(s, a, e) \ 1828 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1830 #define T_le_iptr(a, e) T_flags_le_long(a, e, 0) 1831 #define T_assert_le_iptr(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1832 #define T_quiet_le_iptr(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1833 #define T_step_le_iptr(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1834 #define T_step_assert_le_iptr(s, a, e) \ 1835 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1837 #define T_lt_iptr(a, e) T_flags_lt_long(a, e, 0) 1838 #define T_assert_lt_iptr(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1839 #define T_quiet_lt_iptr(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1840 #define T_step_lt_iptr(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1841 #define T_step_assert_lt_iptr(s, a, e) \ 1842 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1856 #define T_eq_uptr(a, e) T_flags_eq_ulong(a, e, 0) 1857 #define T_assert_eq_uptr(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1858 #define T_quiet_eq_uptr(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1859 #define T_step_eq_uptr(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1860 #define T_step_assert_eq_uptr(s, a, e) \ 1861 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1863 #define T_ne_uptr(a, e) T_flags_ne_ulong(a, e, 0) 1864 #define T_assert_ne_uptr(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1865 #define T_quiet_ne_uptr(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1866 #define T_step_ne_uptr(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1867 #define T_step_assert_ne_uptr(s, a, e) \ 1868 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1870 #define T_ge_uptr(a, e) T_flags_ge_ulong(a, e, 0) 1871 #define T_assert_ge_uptr(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1872 #define T_quiet_ge_uptr(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1873 #define T_step_ge_uptr(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1874 #define T_step_assert_ge_uptr(s, a, e) \ 1875 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1877 #define T_gt_uptr(a, e) T_flags_gt_ulong(a, e, 0) 1878 #define T_assert_gt_uptr(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1879 #define T_quiet_gt_uptr(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1880 #define T_step_gt_uptr(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1881 #define T_step_assert_gt_uptr(s, a, e) \ 1882 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1884 #define T_le_uptr(a, e) T_flags_le_ulong(a, e, 0) 1885 #define T_assert_le_uptr(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1886 #define T_quiet_le_uptr(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1887 #define T_step_le_uptr(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1888 #define T_step_assert_le_uptr(s, a, e) \ 1889 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1891 #define T_lt_uptr(a, e) T_flags_lt_ulong(a, e, 0) 1892 #define T_assert_lt_uptr(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 1893 #define T_quiet_lt_uptr(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 1894 #define T_step_lt_uptr(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 1895 #define T_step_assert_lt_uptr(s, a, e) \ 1896 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1910 #define T_eq_ssz(a, e) T_flags_eq_long(a, e, 0) 1911 #define T_assert_eq_ssz(a, e) T_flags_eq_long(a, e, T_CHECK_STOP) 1912 #define T_quiet_eq_ssz(a, e) T_flags_eq_long(a, e, T_CHECK_QUIET) 1913 #define T_step_eq_ssz(s, a, e) T_flags_eq_long(a, e, T_CHECK_STEP(s)) 1914 #define T_step_assert_eq_ssz(s, a, e) \ 1915 T_flags_eq_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1917 #define T_ne_ssz(a, e) T_flags_ne_long(a, e, 0) 1918 #define T_assert_ne_ssz(a, e) T_flags_ne_long(a, e, T_CHECK_STOP) 1919 #define T_quiet_ne_ssz(a, e) T_flags_ne_long(a, e, T_CHECK_QUIET) 1920 #define T_step_ne_ssz(s, a, e) T_flags_ne_long(a, e, T_CHECK_STEP(s)) 1921 #define T_step_assert_ne_ssz(s, a, e) \ 1922 T_flags_ne_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1924 #define T_ge_ssz(a, e) T_flags_ge_long(a, e, 0) 1925 #define T_assert_ge_ssz(a, e) T_flags_ge_long(a, e, T_CHECK_STOP) 1926 #define T_quiet_ge_ssz(a, e) T_flags_ge_long(a, e, T_CHECK_QUIET) 1927 #define T_step_ge_ssz(s, a, e) T_flags_ge_long(a, e, T_CHECK_STEP(s)) 1928 #define T_step_assert_ge_ssz(s, a, e) \ 1929 T_flags_ge_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1931 #define T_gt_ssz(a, e) T_flags_gt_long(a, e, 0) 1932 #define T_assert_gt_ssz(a, e) T_flags_gt_long(a, e, T_CHECK_STOP) 1933 #define T_quiet_gt_ssz(a, e) T_flags_gt_long(a, e, T_CHECK_QUIET) 1934 #define T_step_gt_ssz(s, a, e) T_flags_gt_long(a, e, T_CHECK_STEP(s)) 1935 #define T_step_assert_gt_ssz(s, a, e) \ 1936 T_flags_gt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1938 #define T_le_ssz(a, e) T_flags_le_long(a, e, 0) 1939 #define T_assert_le_ssz(a, e) T_flags_le_long(a, e, T_CHECK_STOP) 1940 #define T_quiet_le_ssz(a, e) T_flags_le_long(a, e, T_CHECK_QUIET) 1941 #define T_step_le_ssz(s, a, e) T_flags_le_long(a, e, T_CHECK_STEP(s)) 1942 #define T_step_assert_le_ssz(s, a, e) \ 1943 T_flags_le_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1945 #define T_lt_ssz(a, e) T_flags_lt_long(a, e, 0) 1946 #define T_assert_lt_ssz(a, e) T_flags_lt_long(a, e, T_CHECK_STOP) 1947 #define T_quiet_lt_ssz(a, e) T_flags_lt_long(a, e, T_CHECK_QUIET) 1948 #define T_step_lt_ssz(s, a, e) T_flags_lt_long(a, e, T_CHECK_STEP(s)) 1949 #define T_step_assert_lt_ssz(s, a, e) \ 1950 T_flags_lt_long(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1964 #define T_eq_sz(a, e) T_flags_eq_ulong(a, e, 0) 1965 #define T_assert_eq_sz(a, e) T_flags_eq_ulong(a, e, T_CHECK_STOP) 1966 #define T_quiet_eq_sz(a, e) T_flags_eq_ulong(a, e, T_CHECK_QUIET) 1967 #define T_step_eq_sz(s, a, e) T_flags_eq_ulong(a, e, T_CHECK_STEP(s)) 1968 #define T_step_assert_eq_sz(s, a, e) \ 1969 T_flags_eq_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1971 #define T_ne_sz(a, e) T_flags_ne_ulong(a, e, 0) 1972 #define T_assert_ne_sz(a, e) T_flags_ne_ulong(a, e, T_CHECK_STOP) 1973 #define T_quiet_ne_sz(a, e) T_flags_ne_ulong(a, e, T_CHECK_QUIET) 1974 #define T_step_ne_sz(s, a, e) T_flags_ne_ulong(a, e, T_CHECK_STEP(s)) 1975 #define T_step_assert_ne_sz(s, a, e) \ 1976 T_flags_ne_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1978 #define T_ge_sz(a, e) T_flags_ge_ulong(a, e, 0) 1979 #define T_assert_ge_sz(a, e) T_flags_ge_ulong(a, e, T_CHECK_STOP) 1980 #define T_quiet_ge_sz(a, e) T_flags_ge_ulong(a, e, T_CHECK_QUIET) 1981 #define T_step_ge_sz(s, a, e) T_flags_ge_ulong(a, e, T_CHECK_STEP(s)) 1982 #define T_step_assert_ge_sz(s, a, e) \ 1983 T_flags_ge_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1985 #define T_gt_sz(a, e) T_flags_gt_ulong(a, e, 0) 1986 #define T_assert_gt_sz(a, e) T_flags_gt_ulong(a, e, T_CHECK_STOP) 1987 #define T_quiet_gt_sz(a, e) T_flags_gt_ulong(a, e, T_CHECK_QUIET) 1988 #define T_step_gt_sz(s, a, e) T_flags_gt_ulong(a, e, T_CHECK_STEP(s)) 1989 #define T_step_assert_gt_sz(s, a, e) \ 1990 T_flags_gt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1992 #define T_le_sz(a, e) T_flags_le_ulong(a, e, 0) 1993 #define T_assert_le_sz(a, e) T_flags_le_ulong(a, e, T_CHECK_STOP) 1994 #define T_quiet_le_sz(a, e) T_flags_le_ulong(a, e, T_CHECK_QUIET) 1995 #define T_step_le_sz(s, a, e) T_flags_le_ulong(a, e, T_CHECK_STEP(s)) 1996 #define T_step_assert_le_sz(s, a, e) \ 1997 T_flags_le_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 1999 #define T_lt_sz(a, e) T_flags_lt_ulong(a, e, 0) 2000 #define T_assert_lt_sz(a, e) T_flags_lt_ulong(a, e, T_CHECK_STOP) 2001 #define T_quiet_lt_sz(a, e) T_flags_lt_ulong(a, e, T_CHECK_QUIET) 2002 #define T_step_lt_sz(s, a, e) T_flags_lt_ulong(a, e, T_CHECK_STEP(s)) 2003 #define T_step_assert_lt_sz(s, a, e) \ 2004 T_flags_lt_ulong(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2018 const char *T_strerror(
int);
2020 #define T_eno(a, e) T_flags_eno(a, e, 0) 2021 #define T_assert_eno(a, e) T_flags_eno(a, e, T_CHECK_STOP) 2022 #define T_quiet_eno(a, e) T_flags_eno(a, e, T_CHECK_QUIET) 2023 #define T_step_eno(s, a, e) T_flags_eno(a, e, T_CHECK_STEP(s)) 2024 #define T_step_assert_eno(s, a, e) \ 2025 T_flags_eno(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2027 #define T_eno_success(a) T_flags_eno_success(a, 0) 2028 #define T_assert_eno_success(a) T_flags_eno_success(a, T_CHECK_STOP) 2029 #define T_quiet_eno_success(a) T_flags_eno_success(a, T_CHECK_QUIET) 2030 #define T_step_eno_success(s, a) T_flags_eno_success(a, T_CHECK_STEP(s)) 2031 #define T_step_assert_eno_success(s, a) \ 2032 T_flags_eno_success(a, T_CHECK_STEP(s) | T_CHECK_STOP) 2034 #define T_psx_error(a, eno) T_flags_psx_error(a, eno, 0) 2035 #define T_assert_psx_error(a, eno) T_flags_psx_error(a, eno, T_CHECK_STOP) 2036 #define T_quiet_psx_error(a, eno) T_flags_psx_error(a, eno, T_CHECK_QUIET) 2037 #define T_step_psx_error(s, a, eno) T_flags_psx_error(a, eno, T_CHECK_STEP(s)) 2038 #define T_step_assert_psx_error(s, a, eno) \ 2039 T_flags_psx_error(a, eno, T_CHECK_STEP(s) | T_CHECK_STOP) 2041 #define T_psx_success(a) T_flags_psx_success(a, 0) 2042 #define T_assert_psx_success(a) T_flags_psx_success(a, T_CHECK_STOP) 2043 #define T_quiet_psx_success(a) T_flags_psx_success(a, T_CHECK_QUIET) 2044 #define T_step_psx_success(s, a) T_flags_psx_success(a, T_CHECK_STEP(s)) 2045 #define T_step_assert_psx_success(s, a) \ 2046 T_flags_psx_success(a, T_CHECK_STEP(s) | T_CHECK_STOP) 2053 #define T_flags_rsc(a, e, flags) \ 2055 static const T_check_context T_check_instance = { \ 2056 T_FILE_NAME, __LINE__, flags }; \ 2057 T_check_rsc(a, &T_check_instance, e); \ 2062 #define T_flags_rsc_success(a, flags) \ 2064 static const T_check_context T_check_instance = { \ 2065 T_FILE_NAME, __LINE__, flags }; \ 2066 T_check_rsc_success(a, &T_check_instance); \ 2079 #define T_rsc(a, e) T_flags_rsc(a, e, 0) 2080 #define T_assert_rsc(a, e) T_flags_rsc(a, e, T_CHECK_STOP) 2081 #define T_quiet_rsc(a, e) T_flags_rsc(a, e, T_CHECK_QUIET) 2082 #define T_step_rsc(s, a, e) T_flags_rsc(a, e, T_CHECK_STEP(s)) 2083 #define T_step_assert_rsc(s, a, e) \ 2084 T_flags_rsc(a, e, T_CHECK_STEP(s) | T_CHECK_STOP) 2086 #define T_rsc_success(a) T_flags_rsc_success(a, 0) 2087 #define T_assert_rsc_success(a) T_flags_rsc_success(a, T_CHECK_STOP) 2088 #define T_quiet_rsc_success(a) T_flags_rsc_success(a, T_CHECK_QUIET) 2089 #define T_step_rsc_success(s, a) T_flags_rsc_success(a, T_CHECK_STEP(s)) 2090 #define T_step_assert_rsc_success(s, a) \ 2091 T_flags_rsc_success(a, T_CHECK_STEP(s) | T_CHECK_STOP) 2096 void T_plan(
unsigned int);
2098 #define T_step(s, ...) T_flags_true(true, T_CHECK_STEP(s), __VA_ARGS__) 2099 #define T_step_assert(s, ...) \ 2100 T_flags_true(true, T_CHECK_STEP(s) | T_CHECK_STOP, __VA_ARGS__) 2113 typedef CPU_Counter_ticks T_ticks;
2115 typedef unsigned long T_ticks;
2118 typedef uint64_t T_time;
2121 typedef char T_time_string[24];
2123 const char *T_time_to_string_ns(T_time, T_time_string);
2125 const char *T_time_to_string_us(T_time, T_time_string);
2127 const char *T_time_to_string_ms(T_time, T_time_string);
2129 const char *T_time_to_string_s(T_time, T_time_string);
2131 const char *T_ticks_to_string_ns(T_ticks, T_time_string);
2133 const char *T_ticks_to_string_us(T_ticks, T_time_string);
2135 const char *T_ticks_to_string_ms(T_ticks, T_time_string);
2137 const char *T_ticks_to_string_s(T_ticks, T_time_string);
2139 T_time T_ticks_to_time(T_ticks);
2141 T_ticks T_time_to_ticks(T_time);
2143 T_time T_seconds_and_nanoseconds_to_time(uint32_t, uint32_t);
2145 void T_time_to_seconds_and_nanoseconds(T_time, uint32_t *, uint32_t *);
2150 static inline T_time
2156 static inline T_ticks
2164 T_ticks T_tick(
void);
2167 T_time T_now_dummy(
void);
2169 T_time T_now_via_tick(
void);
2171 T_time T_case_begin_time(
void);
2175 void *T_malloc(
size_t);
2177 void *T_calloc(
size_t,
size_t);
2179 void *T_zalloc(
size_t,
void (*)(
void *));
2181 void T_free(
void *);
2183 void T_register(
void);
2186 T_EVENT_RUN_INITIALIZE,
2191 T_EVENT_RUN_FINALIZE
2194 typedef void (*T_action)(T_event,
const char *);
2196 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_file_descriptors(T_event,
const char *);
2271 void T_check_rtems_barriers(T_event,
const char *);
2273 void T_check_rtems_extensions(T_event,
const char *);
2275 void T_check_rtems_message_queues(T_event,
const char *);
2277 void T_check_rtems_partitions(T_event,
const char *);
2279 void T_check_rtems_periods(T_event,
const char *);
2281 void T_check_rtems_regions(T_event,
const char *);
2283 void T_check_rtems_semaphores(T_event,
const char *);
2285 void T_check_rtems_tasks(T_event,
const char *);
2287 void T_check_rtems_timers(T_event,
const char *);
2289 void T_check_posix_keys(T_event,
const char *);
2291 void T_check_posix_message_queues(T_event,
const char *);
2293 void T_check_posix_semaphores(T_event,
const char *);
2295 void T_check_posix_shms(T_event,
const char *);
2297 void T_check_posix_threads(T_event,
const char *);
2299 void T_check_posix_timers(T_event,
const char *);
2339 size_t sample_count;
2345 void (*setup)(
void *);
2346 void (*body)(
void *);
2347 bool (*teardown)(
void *, T_ticks *, uint32_t, uint32_t,
unsigned int);
2351 #define T_MEASURE_RUNTIME_ALLOW_CLOCK_ISR 0x1 2353 #define T_MEASURE_RUNTIME_REPORT_SAMPLES 0x2 2355 #define T_MEASURE_RUNTIME_DISABLE_VALID_CACHE 0x10 2357 #define T_MEASURE_RUNTIME_DISABLE_HOT_CACHE 0x20 2359 #define T_MEASURE_RUNTIME_DISABLE_DIRTY_CACHE 0x40 2361 #define T_MEASURE_RUNTIME_DISABLE_MINOR_LOAD 0x80 2363 #define T_MEASURE_RUNTIME_DISABLE_MAX_LOAD 0x100 2365 T_measure_runtime_context *T_measure_runtime_create(
2368 void T_measure_runtime(T_measure_runtime_context *,
CPU_Counter_ticks _CPU_Counter_read(void)
Returns the current CPU counter value.
Definition: system-clocks.c:117
int64_t _Timecounter_Sbinuptime(void)
Returns the uptime in the sbintime_t format.
Definition: t-test-rtems-measure.c:45
Definition: b1553brm.c:75
Definition: mongoose.c:442