This is a generic floating point multiply and accumulate test for single precision floating point values. I've split of the common float functions into a helper library so additional tests can use the same common code. As I don't have references for all architectures I've allowed some flexibility for tests to pass without reference files. They can be added as we get collect them. Signed-off-by: Alex Bennée <alex.bennee@linaro.org> Reviewed-by: Richard Henderson <richard.henderson@linaro.org> Tested-by: Philippe Mathieu-Daudé <philmd@redhat.com>
37 lines
869 B
Makefile
37 lines
869 B
Makefile
# -*- Mode: makefile -*-
|
|
#
|
|
# ARM - included from tests/tcg/Makefile
|
|
#
|
|
|
|
ARM_SRC=$(SRC_PATH)/tests/tcg/arm
|
|
|
|
# Set search path for all sources
|
|
VPATH += $(ARM_SRC)
|
|
|
|
# Multiarch Tests
|
|
float_madds: CFLAGS+=-mfpu=neon-vfpv4
|
|
|
|
# Basic Hello World
|
|
ARM_TESTS = hello-arm
|
|
hello-arm: CFLAGS+=-marm -ffreestanding
|
|
hello-arm: LDFLAGS+=-nostdlib
|
|
|
|
# IWMXT floating point extensions
|
|
ARM_TESTS += test-arm-iwmmxt
|
|
test-arm-iwmmxt: CFLAGS+=-marm -march=iwmmxt -mabi=aapcs -mfpu=fpv4-sp-d16
|
|
test-arm-iwmmxt: test-arm-iwmmxt.S
|
|
$(CC) $(CFLAGS) $< -o $@ $(LDFLAGS)
|
|
|
|
# Float-convert Tests
|
|
ARM_TESTS += fcvt
|
|
fcvt: LDFLAGS+=-lm
|
|
# fcvt: CFLAGS+=-march=armv8.2-a+fp16 -mfpu=neon-fp-armv8
|
|
run-fcvt: fcvt
|
|
$(call run-test,fcvt,$(QEMU) $<,"$< on $(TARGET_NAME)")
|
|
$(call diff-out,fcvt,$(ARM_SRC)/fcvt.ref)
|
|
|
|
TESTS += $(ARM_TESTS)
|
|
|
|
# On ARM Linux only supports 4k pages
|
|
EXTRA_RUNS+=run-test-mmap-4096
|