mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-07 06:43:00 +03:00
Drop nan-pseudo-number.h usage from tests
Make the tests use TEST_COND_intel96 to decide on whether to build the unnormal tests instead of the macro in nan-pseudo-number.h and then drop the header inclusion. This unbreaks test runs on all architectures that do not have ldbl-96. Also drop the HANDLE_PSEUDO_NUMBERS macro since it is not used anywhere.
This commit is contained in:
@@ -19,7 +19,6 @@
|
|||||||
#include "libm-test-support.h"
|
#include "libm-test-support.h"
|
||||||
|
|
||||||
#include <math-tests-arch.h>
|
#include <math-tests-arch.h>
|
||||||
#include <nan-pseudo-number.h>
|
|
||||||
|
|
||||||
/* Flags set by the including file. */
|
/* Flags set by the including file. */
|
||||||
const int flag_test_errno = TEST_ERRNO;
|
const int flag_test_errno = TEST_ERRNO;
|
||||||
@@ -124,7 +123,7 @@ const char qtype_str[] = TYPE_STR;
|
|||||||
#define snan_value_ld __builtin_nansl ("")
|
#define snan_value_ld __builtin_nansl ("")
|
||||||
|
|
||||||
/* For pseudo-normal number tests. */
|
/* For pseudo-normal number tests. */
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
# include <math_ldbl.h>
|
# include <math_ldbl.h>
|
||||||
#define pseudo_inf { .parts = { 0x00000000, 0x00000000, 0x7fff }}
|
#define pseudo_inf { .parts = { 0x00000000, 0x00000000, 0x7fff }}
|
||||||
#define pseudo_zero { .parts = { 0x00000000, 0x00000000, 0x0100 }}
|
#define pseudo_zero { .parts = { 0x00000000, 0x00000000, 0x0100 }}
|
||||||
@@ -328,7 +327,7 @@ struct test_f_i_data
|
|||||||
} rd, rn, rz, ru;
|
} rd, rn, rz, ru;
|
||||||
};
|
};
|
||||||
/* Used for RUN_TEST_LOOP_f_i_tg_u and RUN_TEST_LOOP_f_b_tg_u. */
|
/* Used for RUN_TEST_LOOP_f_i_tg_u and RUN_TEST_LOOP_f_b_tg_u. */
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
struct test_f_i_data_u
|
struct test_f_i_data_u
|
||||||
{
|
{
|
||||||
const char *arg_str;
|
const char *arg_str;
|
||||||
|
@@ -37,7 +37,7 @@ static const struct test_f_i_data fpclassify_test_data[] =
|
|||||||
TEST_f_i (fpclassify, -min_subnorm_value, FP_SUBNORMAL, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_i (fpclassify, -min_subnorm_value, FP_SUBNORMAL, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
};
|
};
|
||||||
|
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
static const struct test_f_i_data_u fpclassify_test_data_u[] =
|
static const struct test_f_i_data_u fpclassify_test_data_u[] =
|
||||||
{
|
{
|
||||||
TEST_f_i (fpclassify, pseudo_zero, FP_NAN, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_i (fpclassify, pseudo_zero, FP_NAN, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
@@ -52,7 +52,7 @@ static void
|
|||||||
fpclassify_test (void)
|
fpclassify_test (void)
|
||||||
{
|
{
|
||||||
ALL_RM_TEST (fpclassify, 1, fpclassify_test_data, RUN_TEST_LOOP_f_i_tg, END);
|
ALL_RM_TEST (fpclassify, 1, fpclassify_test_data, RUN_TEST_LOOP_f_i_tg, END);
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
ALL_RM_TEST (fpclassify, 1, fpclassify_test_data_u, RUN_TEST_LOOP_f_i_tg_u, END);
|
ALL_RM_TEST (fpclassify, 1, fpclassify_test_data_u, RUN_TEST_LOOP_f_i_tg_u, END);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -37,7 +37,7 @@ static const struct test_f_i_data isinf_test_data[] =
|
|||||||
TEST_f_b (isinf, -snan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_b (isinf, -snan_value, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
};
|
};
|
||||||
|
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
static const struct test_f_i_data_u isinf_test_data_u[] =
|
static const struct test_f_i_data_u isinf_test_data_u[] =
|
||||||
{
|
{
|
||||||
TEST_f_b (isinf, pseudo_zero, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_b (isinf, pseudo_zero, 0, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
@@ -52,7 +52,7 @@ static void
|
|||||||
isinf_test (void)
|
isinf_test (void)
|
||||||
{
|
{
|
||||||
ALL_RM_TEST (isinf, 1, isinf_test_data, RUN_TEST_LOOP_f_b_tg, END);
|
ALL_RM_TEST (isinf, 1, isinf_test_data, RUN_TEST_LOOP_f_b_tg, END);
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
ALL_RM_TEST (isinf, 1, isinf_test_data_u, RUN_TEST_LOOP_f_b_tg_u, END);
|
ALL_RM_TEST (isinf, 1, isinf_test_data_u, RUN_TEST_LOOP_f_b_tg_u, END);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -37,7 +37,7 @@ static const struct test_f_i_data isnan_test_data[] =
|
|||||||
TEST_f_b (isnan, -snan_value, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_b (isnan, -snan_value, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
};
|
};
|
||||||
|
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
static const struct test_f_i_data_u isnan_test_data_u[] =
|
static const struct test_f_i_data_u isnan_test_data_u[] =
|
||||||
{
|
{
|
||||||
TEST_f_b (isnan, pseudo_zero, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_b (isnan, pseudo_zero, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
@@ -52,7 +52,7 @@ static void
|
|||||||
isnan_test (void)
|
isnan_test (void)
|
||||||
{
|
{
|
||||||
ALL_RM_TEST (isnan, 1, isnan_test_data, RUN_TEST_LOOP_f_b_tg, END);
|
ALL_RM_TEST (isnan, 1, isnan_test_data, RUN_TEST_LOOP_f_b_tg, END);
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
ALL_RM_TEST (isnan, 1, isnan_test_data_u, RUN_TEST_LOOP_f_b_tg_u, END);
|
ALL_RM_TEST (isnan, 1, isnan_test_data_u, RUN_TEST_LOOP_f_b_tg_u, END);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -39,7 +39,7 @@ static const struct test_f_i_data issignaling_test_data[] =
|
|||||||
TEST_f_b (issignaling, -snan_value_MACRO, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_b (issignaling, -snan_value_MACRO, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
};
|
};
|
||||||
|
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
static const struct test_f_i_data_u issignaling_test_data_u[] =
|
static const struct test_f_i_data_u issignaling_test_data_u[] =
|
||||||
{
|
{
|
||||||
TEST_f_b (issignaling, pseudo_zero, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
TEST_f_b (issignaling, pseudo_zero, 1, NO_INEXACT_EXCEPTION|ERRNO_UNCHANGED),
|
||||||
@@ -54,7 +54,7 @@ static void
|
|||||||
issignaling_test (void)
|
issignaling_test (void)
|
||||||
{
|
{
|
||||||
ALL_RM_TEST (issignaling, 1, issignaling_test_data, RUN_TEST_LOOP_f_b_tg, END);
|
ALL_RM_TEST (issignaling, 1, issignaling_test_data, RUN_TEST_LOOP_f_b_tg, END);
|
||||||
#if HANDLE_PSEUDO_NUMBERS
|
#if TEST_COND_intel96
|
||||||
ALL_RM_TEST (issignaling, 1, issignaling_test_data_u, RUN_TEST_LOOP_f_b_tg_u, END);
|
ALL_RM_TEST (issignaling, 1, issignaling_test_data_u, RUN_TEST_LOOP_f_b_tg_u, END);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
@@ -19,9 +19,7 @@
|
|||||||
#ifndef NAN_PSEUDO_NUMBER_H
|
#ifndef NAN_PSEUDO_NUMBER_H
|
||||||
#define NAN_PSEUDO_NUMBER_H 1
|
#define NAN_PSEUDO_NUMBER_H 1
|
||||||
|
|
||||||
/* Set this macro and override the definition of IS_PSEUDO_SIGNALING if pseudo
|
/* Default is to assume that pseudo numbers are not signaling. */
|
||||||
numbers need special handling. */
|
|
||||||
#define HANDLE_PSEUDO_NUMBERS 0
|
|
||||||
static inline int
|
static inline int
|
||||||
is_pseudo_signaling (uint32_t exi, uint32_t hxi)
|
is_pseudo_signaling (uint32_t exi, uint32_t hxi)
|
||||||
{
|
{
|
||||||
|
@@ -19,7 +19,6 @@
|
|||||||
#ifndef NAN_PSEUDO_NUMBER_H
|
#ifndef NAN_PSEUDO_NUMBER_H
|
||||||
#define NAN_PSEUDO_NUMBER_H 1
|
#define NAN_PSEUDO_NUMBER_H 1
|
||||||
|
|
||||||
#define HANDLE_PSEUDO_NUMBERS 1
|
|
||||||
/* Pseudo numbers on x86 are always signaling. */
|
/* Pseudo numbers on x86 are always signaling. */
|
||||||
static inline int
|
static inline int
|
||||||
is_pseudo_signaling (uint32_t exi, uint32_t hxi)
|
is_pseudo_signaling (uint32_t exi, uint32_t hxi)
|
||||||
|
Reference in New Issue
Block a user