The non-signalling versions of VSX scalar convert to shorter/longer precision insns doesn't silence SNaNs in the hardware. To better match this behavior, use the non-arithmatic conversion of helper_todouble instead of float32_to_float64. A test is added to prevent future regressions. Signed-off-by: Matheus Ferst <matheus.ferst@eldorado.org.br> Message-Id: <20211228120310.1957990-1-matheus.ferst@eldorado.org.br> Signed-off-by: Cédric Le Goater <clg@kaod.org>
23 lines
552 B
Makefile
23 lines
552 B
Makefile
# -*- Mode: makefile -*-
|
|
#
|
|
# ppc64le specific tweaks
|
|
|
|
VPATH += $(SRC_PATH)/tests/tcg/ppc64le
|
|
|
|
ifneq ($(DOCKER_IMAGE)$(CROSS_CC_HAS_POWER8_VECTOR),)
|
|
PPC64LE_TESTS=bcdsub non_signalling_xscv
|
|
endif
|
|
$(PPC64LE_TESTS): CFLAGS += -mpower8-vector
|
|
|
|
ifneq ($(DOCKER_IMAGE)$(CROSS_CC_HAS_POWER10),)
|
|
PPC64LE_TESTS += byte_reverse
|
|
endif
|
|
byte_reverse: CFLAGS += -mcpu=power10
|
|
run-byte_reverse: QEMU_OPTS+=-cpu POWER10
|
|
run-plugin-byte_reverse-with-%: QEMU_OPTS+=-cpu POWER10
|
|
|
|
PPC64LE_TESTS += mtfsf
|
|
PPC64LE_TESTS += signal_save_restore_xer
|
|
|
|
TESTS += $(PPC64LE_TESTS)
|