@@ -25,7 +25,8 @@ TEST_F(LlvmLibcPowfTest, SpecialNumbers) {
25
25
constexpr float neg_non_integer = -1 .1f ;
26
26
constexpr float pos_odd_integer = 5 .0f ;
27
27
constexpr float pos_even_integer = 8 .0f ;
28
- constexpr float pos_non_integer = 1 .1f ;
28
+ constexpr float pos_non_integer = 1 .3f ;
29
+ constexpr float one_half = 0 .5f ;
29
30
30
31
for (int i = 0 ; i < N_ROUNDING_MODES; ++i) {
31
32
ForceRoundingMode __r (ROUNDING_MODES[i]);
@@ -42,6 +43,7 @@ TEST_F(LlvmLibcPowfTest, SpecialNumbers) {
42
43
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (zero, pos_odd_integer));
43
44
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (zero, pos_even_integer));
44
45
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (zero, pos_non_integer));
46
+ EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (zero, one_half));
45
47
EXPECT_FP_EQ (1 .0f , LIBC_NAMESPACE::powf (zero, zero));
46
48
EXPECT_FP_EQ (1 .0f , LIBC_NAMESPACE::powf (zero, neg_zero));
47
49
EXPECT_FP_EQ (0 .0f , LIBC_NAMESPACE::powf (zero, inf));
@@ -59,6 +61,7 @@ TEST_F(LlvmLibcPowfTest, SpecialNumbers) {
59
61
EXPECT_FP_EQ (neg_zero, LIBC_NAMESPACE::powf (neg_zero, pos_odd_integer));
60
62
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (neg_zero, pos_even_integer));
61
63
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (neg_zero, pos_non_integer));
64
+ EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (neg_zero, one_half));
62
65
EXPECT_FP_EQ (1 .0f , LIBC_NAMESPACE::powf (neg_zero, zero));
63
66
EXPECT_FP_EQ (1 .0f , LIBC_NAMESPACE::powf (neg_zero, neg_zero));
64
67
EXPECT_FP_EQ (0 .0f , LIBC_NAMESPACE::powf (neg_zero, inf));
@@ -109,6 +112,7 @@ TEST_F(LlvmLibcPowfTest, SpecialNumbers) {
109
112
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (inf, pos_odd_integer));
110
113
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (inf, pos_even_integer));
111
114
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (inf, pos_non_integer));
115
+ EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (inf, one_half));
112
116
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (inf, inf));
113
117
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (inf, neg_inf));
114
118
EXPECT_FP_IS_NAN (LIBC_NAMESPACE::powf (inf, aNaN));
@@ -124,6 +128,7 @@ TEST_F(LlvmLibcPowfTest, SpecialNumbers) {
124
128
EXPECT_FP_EQ (neg_inf, LIBC_NAMESPACE::powf (neg_inf, pos_odd_integer));
125
129
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (neg_inf, pos_even_integer));
126
130
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (neg_inf, pos_non_integer));
131
+ EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (neg_inf, one_half));
127
132
EXPECT_FP_EQ (inf, LIBC_NAMESPACE::powf (neg_inf, inf));
128
133
EXPECT_FP_EQ (zero, LIBC_NAMESPACE::powf (neg_inf, neg_inf));
129
134
EXPECT_FP_IS_NAN (LIBC_NAMESPACE::powf (neg_inf, aNaN));
0 commit comments