Skip to content

Commit

Permalink
test: Cover all the valid imm range in tests
Browse files Browse the repository at this point in the history
  • Loading branch information
howjmay committed Jan 22, 2023
1 parent 1b580a8 commit e23a0d6
Show file tree
Hide file tree
Showing 2 changed files with 579 additions and 242 deletions.
365 changes: 356 additions & 9 deletions tests/common.h
Original file line number Diff line number Diff line change
Expand Up @@ -210,16 +210,363 @@ result_t validateFloatError(__m128d a, double d0, double d1, double err);
#define VALIDATE_UINT16_M64(A, B) validateUInt16(A, B[0], B[1], B[2], B[3])
#define VALIDATE_INT32_M64(A, B) validateInt32(A, B[0], B[1])
#define VALIDATE_UINT32_M64(A, B) validateUInt32(A, B[0], B[1])

#define CHECK_RESULT(EXP) \
if (EXP != TEST_SUCCESS) { \
return TEST_FAIL; \
}
#define IMM_4_ITER \
TEST_IMPL(0) \
TEST_IMPL(1) \
TEST_IMPL(2) \
TEST_IMPL(3)
#define IMM_8_ITER \
TEST(0) \
TEST(1) \
TEST(2) \
TEST(3) \
TEST(4) \
TEST(5) \
TEST(6) \
TEST(7)
TEST_IMPL(0) \
TEST_IMPL(1) \
TEST_IMPL(2) \
TEST_IMPL(3) \
TEST_IMPL(4) \
TEST_IMPL(5) \
TEST_IMPL(6) \
TEST_IMPL(7)
#define IMM_16_ITER \
TEST_IMPL(0) \
TEST_IMPL(1) \
TEST_IMPL(2) \
TEST_IMPL(3) \
TEST_IMPL(4) \
TEST_IMPL(5) \
TEST_IMPL(6) \
TEST_IMPL(7) \
TEST_IMPL(8) \
TEST_IMPL(9) \
TEST_IMPL(10) \
TEST_IMPL(11) \
TEST_IMPL(12) \
TEST_IMPL(13) \
TEST_IMPL(14) \
TEST_IMPL(15)
#define IMM_64_ITER \
TEST_IMPL(0) \
TEST_IMPL(1) \
TEST_IMPL(2) \
TEST_IMPL(3) \
TEST_IMPL(4) \
TEST_IMPL(5) \
TEST_IMPL(6) \
TEST_IMPL(7) \
TEST_IMPL(8) \
TEST_IMPL(9) \
TEST_IMPL(10) \
TEST_IMPL(11) \
TEST_IMPL(12) \
TEST_IMPL(13) \
TEST_IMPL(14) \
TEST_IMPL(15) \
TEST_IMPL(16) \
TEST_IMPL(17) \
TEST_IMPL(18) \
TEST_IMPL(19) \
TEST_IMPL(20) \
TEST_IMPL(21) \
TEST_IMPL(22) \
TEST_IMPL(23) \
TEST_IMPL(24) \
TEST_IMPL(25) \
TEST_IMPL(26) \
TEST_IMPL(27) \
TEST_IMPL(28) \
TEST_IMPL(29) \
TEST_IMPL(30) \
TEST_IMPL(31) \
TEST_IMPL(32) \
TEST_IMPL(33) \
TEST_IMPL(34) \
TEST_IMPL(35) \
TEST_IMPL(36) \
TEST_IMPL(37) \
TEST_IMPL(38) \
TEST_IMPL(39) \
TEST_IMPL(40) \
TEST_IMPL(41) \
TEST_IMPL(42) \
TEST_IMPL(43) \
TEST_IMPL(44) \
TEST_IMPL(45) \
TEST_IMPL(46) \
TEST_IMPL(47) \
TEST_IMPL(48) \
TEST_IMPL(49) \
TEST_IMPL(50) \
TEST_IMPL(51) \
TEST_IMPL(52) \
TEST_IMPL(53) \
TEST_IMPL(54) \
TEST_IMPL(55) \
TEST_IMPL(56) \
TEST_IMPL(57) \
TEST_IMPL(58) \
TEST_IMPL(59) \
TEST_IMPL(60) \
TEST_IMPL(61) \
TEST_IMPL(62) \
TEST_IMPL(63)
#define IMM_256_ITER \
TEST_IMPL(0) \
TEST_IMPL(1) \
TEST_IMPL(2) \
TEST_IMPL(3) \
TEST_IMPL(4) \
TEST_IMPL(5) \
TEST_IMPL(6) \
TEST_IMPL(7) \
TEST_IMPL(8) \
TEST_IMPL(9) \
TEST_IMPL(10) \
TEST_IMPL(11) \
TEST_IMPL(12) \
TEST_IMPL(13) \
TEST_IMPL(14) \
TEST_IMPL(15) \
TEST_IMPL(16) \
TEST_IMPL(17) \
TEST_IMPL(18) \
TEST_IMPL(19) \
TEST_IMPL(20) \
TEST_IMPL(21) \
TEST_IMPL(22) \
TEST_IMPL(23) \
TEST_IMPL(24) \
TEST_IMPL(25) \
TEST_IMPL(26) \
TEST_IMPL(27) \
TEST_IMPL(28) \
TEST_IMPL(29) \
TEST_IMPL(30) \
TEST_IMPL(31) \
TEST_IMPL(32) \
TEST_IMPL(33) \
TEST_IMPL(34) \
TEST_IMPL(35) \
TEST_IMPL(36) \
TEST_IMPL(37) \
TEST_IMPL(38) \
TEST_IMPL(39) \
TEST_IMPL(40) \
TEST_IMPL(41) \
TEST_IMPL(42) \
TEST_IMPL(43) \
TEST_IMPL(44) \
TEST_IMPL(45) \
TEST_IMPL(46) \
TEST_IMPL(47) \
TEST_IMPL(48) \
TEST_IMPL(49) \
TEST_IMPL(50) \
TEST_IMPL(51) \
TEST_IMPL(52) \
TEST_IMPL(53) \
TEST_IMPL(54) \
TEST_IMPL(55) \
TEST_IMPL(56) \
TEST_IMPL(57) \
TEST_IMPL(58) \
TEST_IMPL(59) \
TEST_IMPL(60) \
TEST_IMPL(61) \
TEST_IMPL(62) \
TEST_IMPL(63) \
TEST_IMPL(64) \
TEST_IMPL(65) \
TEST_IMPL(66) \
TEST_IMPL(67) \
TEST_IMPL(68) \
TEST_IMPL(69) \
TEST_IMPL(70) \
TEST_IMPL(71) \
TEST_IMPL(72) \
TEST_IMPL(73) \
TEST_IMPL(74) \
TEST_IMPL(75) \
TEST_IMPL(76) \
TEST_IMPL(77) \
TEST_IMPL(78) \
TEST_IMPL(79) \
TEST_IMPL(80) \
TEST_IMPL(81) \
TEST_IMPL(82) \
TEST_IMPL(83) \
TEST_IMPL(84) \
TEST_IMPL(85) \
TEST_IMPL(86) \
TEST_IMPL(87) \
TEST_IMPL(88) \
TEST_IMPL(89) \
TEST_IMPL(90) \
TEST_IMPL(91) \
TEST_IMPL(92) \
TEST_IMPL(93) \
TEST_IMPL(94) \
TEST_IMPL(95) \
TEST_IMPL(96) \
TEST_IMPL(97) \
TEST_IMPL(98) \
TEST_IMPL(99) \
TEST_IMPL(100) \
TEST_IMPL(101) \
TEST_IMPL(102) \
TEST_IMPL(103) \
TEST_IMPL(104) \
TEST_IMPL(105) \
TEST_IMPL(106) \
TEST_IMPL(107) \
TEST_IMPL(108) \
TEST_IMPL(109) \
TEST_IMPL(110) \
TEST_IMPL(111) \
TEST_IMPL(112) \
TEST_IMPL(113) \
TEST_IMPL(114) \
TEST_IMPL(115) \
TEST_IMPL(116) \
TEST_IMPL(117) \
TEST_IMPL(118) \
TEST_IMPL(119) \
TEST_IMPL(120) \
TEST_IMPL(121) \
TEST_IMPL(122) \
TEST_IMPL(123) \
TEST_IMPL(124) \
TEST_IMPL(125) \
TEST_IMPL(126) \
TEST_IMPL(127) \
TEST_IMPL(128) \
TEST_IMPL(129) \
TEST_IMPL(130) \
TEST_IMPL(131) \
TEST_IMPL(132) \
TEST_IMPL(133) \
TEST_IMPL(134) \
TEST_IMPL(135) \
TEST_IMPL(136) \
TEST_IMPL(137) \
TEST_IMPL(138) \
TEST_IMPL(139) \
TEST_IMPL(140) \
TEST_IMPL(141) \
TEST_IMPL(142) \
TEST_IMPL(143) \
TEST_IMPL(144) \
TEST_IMPL(145) \
TEST_IMPL(146) \
TEST_IMPL(147) \
TEST_IMPL(148) \
TEST_IMPL(149) \
TEST_IMPL(150) \
TEST_IMPL(151) \
TEST_IMPL(152) \
TEST_IMPL(153) \
TEST_IMPL(154) \
TEST_IMPL(155) \
TEST_IMPL(156) \
TEST_IMPL(157) \
TEST_IMPL(158) \
TEST_IMPL(159) \
TEST_IMPL(160) \
TEST_IMPL(161) \
TEST_IMPL(162) \
TEST_IMPL(163) \
TEST_IMPL(164) \
TEST_IMPL(165) \
TEST_IMPL(166) \
TEST_IMPL(167) \
TEST_IMPL(168) \
TEST_IMPL(169) \
TEST_IMPL(170) \
TEST_IMPL(171) \
TEST_IMPL(172) \
TEST_IMPL(173) \
TEST_IMPL(174) \
TEST_IMPL(175) \
TEST_IMPL(176) \
TEST_IMPL(177) \
TEST_IMPL(178) \
TEST_IMPL(179) \
TEST_IMPL(180) \
TEST_IMPL(181) \
TEST_IMPL(182) \
TEST_IMPL(183) \
TEST_IMPL(184) \
TEST_IMPL(185) \
TEST_IMPL(186) \
TEST_IMPL(187) \
TEST_IMPL(188) \
TEST_IMPL(189) \
TEST_IMPL(190) \
TEST_IMPL(191) \
TEST_IMPL(192) \
TEST_IMPL(193) \
TEST_IMPL(194) \
TEST_IMPL(195) \
TEST_IMPL(196) \
TEST_IMPL(197) \
TEST_IMPL(198) \
TEST_IMPL(199) \
TEST_IMPL(200) \
TEST_IMPL(201) \
TEST_IMPL(202) \
TEST_IMPL(203) \
TEST_IMPL(204) \
TEST_IMPL(205) \
TEST_IMPL(206) \
TEST_IMPL(207) \
TEST_IMPL(208) \
TEST_IMPL(209) \
TEST_IMPL(210) \
TEST_IMPL(211) \
TEST_IMPL(212) \
TEST_IMPL(213) \
TEST_IMPL(214) \
TEST_IMPL(215) \
TEST_IMPL(216) \
TEST_IMPL(217) \
TEST_IMPL(218) \
TEST_IMPL(219) \
TEST_IMPL(220) \
TEST_IMPL(221) \
TEST_IMPL(222) \
TEST_IMPL(223) \
TEST_IMPL(224) \
TEST_IMPL(225) \
TEST_IMPL(226) \
TEST_IMPL(227) \
TEST_IMPL(228) \
TEST_IMPL(229) \
TEST_IMPL(230) \
TEST_IMPL(231) \
TEST_IMPL(232) \
TEST_IMPL(233) \
TEST_IMPL(234) \
TEST_IMPL(235) \
TEST_IMPL(236) \
TEST_IMPL(237) \
TEST_IMPL(238) \
TEST_IMPL(239) \
TEST_IMPL(240) \
TEST_IMPL(241) \
TEST_IMPL(242) \
TEST_IMPL(243) \
TEST_IMPL(244) \
TEST_IMPL(245) \
TEST_IMPL(246) \
TEST_IMPL(247) \
TEST_IMPL(248) \
TEST_IMPL(249) \
TEST_IMPL(250) \
TEST_IMPL(251) \
TEST_IMPL(252) \
TEST_IMPL(253) \
TEST_IMPL(254) \
TEST_IMPL(255)
} // namespace SSE2NEON

#endif
Loading

0 comments on commit e23a0d6

Please sign in to comment.