mirror of
https://sourceware.org/git/glibc.git
synced 2025-08-08 17:42:12 +03:00
Add Makefile infrastructure and IBM 128-bit 'long double' real input for targets switching between the IEEE 754 binary128 and IBM 128-bit formats with '-mabi=ieeelongdouble' and '-mabi=ibmlongdouble'. Reuse IEEE 754 binary128 input data but with modified output file names so as not to clash with the names used for IBM 128-bit format tests made with common rules for the 'long double' data type. Keep input data disabled and referring to BZ #12701 for entries that are are currently incorrectly accepted as valid data, such as '0e', '0e+', '0x', '0x8p', '0x0p-', etc. Reviewed-by: Joseph Myers <josmyers@redhat.com>
43 lines
1.4 KiB
Makefile
43 lines
1.4 KiB
Makefile
# The`long double' type is a distinct type we support if
|
|
# -mlong-double-128 option is used (or when it becomes a default
|
|
# when -mlong-double-64 is not used).
|
|
long-double-fcts = yes
|
|
sysdep-CFLAGS += -mlong-double-128
|
|
|
|
ifeq ($(subdir),stdlib)
|
|
tests += tst-strtold-ldbl-128ibm
|
|
$(objpfx)tst-strtold-ldbl-128ibm: $(libm)
|
|
endif
|
|
|
|
ldbl-tests = test-fmodl-ldbl-128ibm test-remainderl-ldbl-128ibm \
|
|
test-remquol-ldbl-128ibm test-canonical-ldbl-128ibm \
|
|
test-totalorderl-ldbl-128ibm
|
|
|
|
ifeq ($(subdir),math)
|
|
tests += $(ldbl-tests)
|
|
endif
|
|
|
|
ifeq ($(subdir),stdio-common)
|
|
fmt-xscanf-real-convs += ldouble
|
|
|
|
# Use the IBM format for long double scanf format tests.
|
|
$(foreach suf,$(all-object-suffixes), \
|
|
$(foreach p,$(xscanf-funcs), \
|
|
$(objpfx)tst-scanf-format-$(p)-ldouble$(suf))): \
|
|
sysdep-CFLAGS += $(type-ldouble-CFLAGS)
|
|
endif
|
|
|
|
# Long double files may need extra CFLAGS.
|
|
ldbl-128ibm-routines = s_nexttoward s_nexttowardf \
|
|
$(type-ldouble-routines) \
|
|
$(subst F,$(type-ldouble-suffix),$(libm-compat-calls)) \
|
|
$(subst F,$(type-ldouble-suffix),$(libm-calls)) \
|
|
$(subst F,$(type-ldouble-suffix),$(calls)) \
|
|
$(foreach f,$(libm-narrow-fns), \
|
|
$(subst F,$(f), \
|
|
$(libm-narrow-types-ldouble-yes)))
|
|
$(foreach suf,$(all-object-suffixes), \
|
|
$(foreach r,$(ldbl-128ibm-routines) $(ldbl-tests), \
|
|
$(objpfx)$(r)$(suf))): \
|
|
CFLAGS += $(type-ldouble-CFLAGS)
|