mirror of
https://sourceware.org/git/glibc.git
synced 2024-11-09 14:50:05 +00:00
math/test-tgmath2: Fix fabs failure when no long double
I have been testing with GCC trunk and GLIBC master while working on the OpenRISC port. This test has been failing with fabs not being called, This is caused as my architecture is configure with no long double meaning the two calls are the same: TEST (fabs (Vdouble1), double, fabs); TEST (fabs (Vldouble1), ldouble, fabs); Instead of the tgmath calls resolving to fabs and fabsl both calls are fabs. Next, do to compiler optimiations the second call is eliminated. Fix this by invoking the failing TEST with Vldouble2. Note, I also updated the FAIL message to more clearly show where the failure happened, so I see: FAIL: math/test-tgmath2 original exit status 1 wrong function called, fabs (ldouble) failure on line 174 Cc: Joseph Myers <joseph@codesourcery.com>
This commit is contained in:
parent
2d651eb926
commit
cc528f9a7e
@ -122,7 +122,7 @@ int counts[Tlast][C_last];
|
||||
__asm __volatile ("" : : "r" (&texpr)); \
|
||||
if (count != 1 || counts[T##type][C_##fn] != 1) \
|
||||
{ \
|
||||
FAIL ("wrong function called"); \
|
||||
FAIL ("wrong function called, "#fn" ("#type")"); \
|
||||
memset (counts, 0, sizeof (counts)); \
|
||||
} \
|
||||
count = 0; \
|
||||
@ -171,7 +171,7 @@ test_fabs (const int Vint4, const long long int Vllong4)
|
||||
TEST (fabs (vcldouble1), ldouble, cabs);
|
||||
TEST (fabs (Vfloat1), float, fabs);
|
||||
TEST (fabs (Vdouble1), double, fabs);
|
||||
TEST (fabs (Vldouble1), ldouble, fabs);
|
||||
TEST (fabs (Vldouble2), ldouble, fabs);
|
||||
#ifndef __OPTIMIZE__
|
||||
/* GCC is too smart to optimize these out. */
|
||||
TEST (fabs (Vint1), double, fabs);
|
||||
|
Loading…
Reference in New Issue
Block a user