c886bb
math: in lgamma* only check signgam when it's specified
@@ -35,7 +35,7 @@ int main(void)
|
|
35
35
|
err++;
|
36
36
|
}
|
37
37
|
d = ulperr(y, p->y, p->dy);
|
38
|
-
if (!checkulp(d, p->r) || yi != p->i
|
38
|
+
if (!checkulp(d, p->r) || (!isnan(p->x) && p->x!=-inf && !(p->e&DIVBYZERO) && yi != p->i)) {
|
39
39
|
printf("%s:%d: %s lgamma(%a) want %a,%lld got %a,%d ulperr %.3f = %a + %a\n",
|
40
40
|
p->file, p->line, rstr(p->r), p->x, p->y, p->i, y, yi, d, d-p->dy, p->dy);
|
41
41
|
err++;
|
@@ -34,7 +34,7 @@ int main(void)
|
|
34
34
|
err++;
|
35
35
|
}
|
36
36
|
d = ulperr(y, p->y, p->dy);
|
37
|
-
if (!checkulp(d, p->r) || yi != p->i
|
37
|
+
if (!checkulp(d, p->r) || (!isnan(p->x) && p->x!=-inf && !(p->e&DIVBYZERO) && yi != p->i)) {
|
38
38
|
printf("%s:%d: %s lgamma_r(%a) want %a,%lld got %a,%d ulperr %.3f = %a + %a\n",
|
39
39
|
p->file, p->line, rstr(p->r), p->x, p->y, p->i, y, yi, d, d-p->dy, p->dy);
|
40
40
|
err++;
|
@@ -35,7 +35,7 @@ int main(void)
|
|
35
35
|
err++;
|
36
36
|
}
|
37
37
|
d = ulperrf(y, p->y, p->dy);
|
38
|
-
if (!checkulp(d, p->r) || yi != p->i
|
38
|
+
if (!checkulp(d, p->r) || (!isnan(p->x) && p->x!=-inf && !(p->e&DIVBYZERO) && yi != p->i)) {
|
39
39
|
printf("%s:%d: %s lgammaf(%a) want %a,%lld got %a,%d ulperr %.3f = %a + %a\n",
|
40
40
|
p->file, p->line, rstr(p->r), p->x, p->y, p->i, y, yi, d, d-p->dy, p->dy);
|
41
41
|
err++;
|
@@ -34,7 +34,7 @@ int main(void)
|
|
34
34
|
err++;
|
35
35
|
}
|
36
36
|
d = ulperrf(y, p->y, p->dy);
|
37
|
-
if (!checkulp(d, p->r) || yi != p->i
|
37
|
+
if (!checkulp(d, p->r) || (!isnan(p->x) && p->x!=-inf && !(p->e&DIVBYZERO) && yi != p->i)) {
|
38
38
|
printf("%s:%d: %s lgammaf_r(%a) want %a,%lld got %a,%d ulperr %.3f = %a + %a\n",
|
39
39
|
p->file, p->line, rstr(p->r), p->x, p->y, p->i, y, yi, d, d-p->dy, p->dy);
|
40
40
|
err++;
|
@@ -41,7 +41,7 @@ int main(void)
|
|
41
41
|
err++;
|
42
42
|
}
|
43
43
|
d = ulperrl(y, p->y, p->dy);
|
44
|
-
if (!checkulp(d, p->r) || yi != p->i
|
44
|
+
if (!checkulp(d, p->r) || (!isnan(p->x) && p->x!=-inf && !(p->e&DIVBYZERO) && yi != p->i)) {
|
45
45
|
printf("%s:%d: %s lgammal(%La) want %La,%lld got %La,%d ulperr %.3f = %a + %a\n",
|
46
46
|
p->file, p->line, rstr(p->r), p->x, p->y, p->i, y, yi, d, d-p->dy, p->dy);
|
47
47
|
err++;
|
@@ -40,7 +40,7 @@ int main(void)
|
|
40
40
|
err++;
|
41
41
|
}
|
42
42
|
d = ulperrl(y, p->y, p->dy);
|
43
|
-
if (!checkulp(d, p->r) || yi != p->i
|
43
|
+
if (!checkulp(d, p->r) || (!isnan(p->x) && p->x!=-inf && !(p->e&DIVBYZERO) && yi != p->i)) {
|
44
44
|
printf("%s:%d: %s lgammal_r(%La) want %La,%lld got %La,%d ulperr %.3f = %a + %a\n",
|
45
45
|
p->file, p->line, rstr(p->r), p->x, p->y, p->i, y, yi, d, d-p->dy, p->dy);
|
46
46
|
err++;
|