Lines Matching defs:func

38   void test_special_numbers(DivFunc func) {
39 EXPECT_FP_IS_NAN(func(in.aNaN, in.aNaN));
40 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.sNaN, in.sNaN), FE_INVALID);
43 EXPECT_FP_IS_NAN(func(qnan_42, in.zero));
44 EXPECT_FP_IS_NAN(func(in.zero, qnan_42));
46 EXPECT_FP_EQ(inf, func(in.inf, in.zero));
47 EXPECT_FP_EQ(neg_inf, func(in.neg_inf, in.zero));
48 EXPECT_FP_EQ(neg_inf, func(in.inf, in.neg_zero));
49 EXPECT_FP_EQ(inf, func(in.neg_inf, in.neg_zero));
52 void test_division_by_zero(DivFunc func) {
53 EXPECT_FP_EQ_WITH_EXCEPTION(inf, func(InType(1.0), in.zero), FE_DIVBYZERO);
54 EXPECT_FP_EQ_WITH_EXCEPTION(neg_inf, func(InType(-1.0), in.zero),
56 EXPECT_FP_EQ_WITH_EXCEPTION(neg_inf, func(InType(1.0), in.neg_zero),
58 EXPECT_FP_EQ_WITH_EXCEPTION(inf, func(InType(1.0), in.zero), FE_DIVBYZERO);
61 void test_invalid_operations(DivFunc func) {
62 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.zero, in.zero), FE_INVALID);
63 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.neg_zero, in.zero), FE_INVALID);
64 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.zero, in.neg_zero), FE_INVALID);
65 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.neg_zero, in.neg_zero), FE_INVALID);
67 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.inf, in.inf), FE_INVALID);
69 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.neg_inf, in.inf), FE_INVALID);
71 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.inf, in.neg_inf), FE_INVALID);
73 EXPECT_FP_IS_NAN_WITH_EXCEPTION(func(in.neg_inf, in.neg_inf), FE_INVALID);
77 void test_range_errors(DivFunc func) {
81 EXPECT_FP_EQ_WITH_EXCEPTION(inf, func(in.max_normal, in.min_normal),
85 func(in.neg_max_normal, in.min_denormal),
89 EXPECT_FP_EQ_WITH_EXCEPTION(zero, func(in.min_denormal, in.max_normal),
93 func(in.neg_min_denormal, in.max_normal),
100 func(in.max_normal, in.min_normal),
103 func(in.neg_max_normal, in.min_denormal),
106 EXPECT_FP_EQ_WITH_EXCEPTION(zero, func(in.min_denormal, in.max_normal),
110 func(in.neg_min_denormal, in.max_normal),
117 func(in.max_normal, in.min_normal),
120 func(in.neg_max_normal, in.min_denormal),
124 EXPECT_FP_EQ_WITH_EXCEPTION(zero, func(in.min_denormal, in.max_normal),
128 func(in.neg_min_denormal, in.max_normal),
134 EXPECT_FP_EQ_WITH_EXCEPTION(inf, func(in.max_normal, in.min_normal),
138 func(in.neg_max_normal, in.min_denormal),
142 func(in.min_denormal, in.max_normal),
146 func(in.neg_min_denormal, in.max_normal),
152 void test_inexact_results(DivFunc func) {
153 func(InType(1.0), InType(3.0));
158 #define LIST_DIV_TESTS(OutType, InType, func) \
160 TEST_F(LlvmLibcDivTest, SpecialNumbers) { test_special_numbers(&func); } \
161 TEST_F(LlvmLibcDivTest, DivisionByZero) { test_division_by_zero(&func); } \
163 test_invalid_operations(&func); \
165 TEST_F(LlvmLibcDivTest, RangeErrors) { test_range_errors(&func); } \
166 TEST_F(LlvmLibcDivTest, InexactResults) { test_inexact_results(&func); }