aboutsummaryrefslogtreecommitdiff
path: root/tests/Makefile.include
diff options
context:
space:
mode:
authorPaolo Bonzini <pbonzini@redhat.com>2020-08-06 14:08:31 +0200
committerPaolo Bonzini <pbonzini@redhat.com>2020-08-21 06:30:15 -0400
commit3941996b131bada064d168b451202c1125d55e6b (patch)
treeacb8c71851a242882e03bfc5743a34a3e4fefffc /tests/Makefile.include
parentce1c1e7a8b4719876ca28bf38234069725f3c1ef (diff)
meson: convert tests/fp and check-softfloat
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'tests/Makefile.include')
-rw-r--r--tests/Makefile.include158
1 files changed, 2 insertions, 156 deletions
diff --git a/tests/Makefile.include b/tests/Makefile.include
index 12b0316a72..8fb6baa0a1 100644
--- a/tests/Makefile.include
+++ b/tests/Makefile.include
@@ -437,9 +437,6 @@ tests/test-bufferiszero$(EXESUF): tests/test-bufferiszero.o $(test-util-obj-y)
tests/atomic_add-bench$(EXESUF): tests/atomic_add-bench.o $(test-util-obj-y)
tests/atomic64-bench$(EXESUF): tests/atomic64-bench.o $(test-util-obj-y)
-tests/fp/%:
- $(MAKE) -C $(dir $@) $(notdir $@)
-
tests/test-qdev-global-props$(EXESUF): tests/test-qdev-global-props.o \
hw/core/qdev.o hw/core/qdev-properties.o hw/core/hotplug.o\
hw/core/bus.o \
@@ -675,157 +672,6 @@ check-report-unit.tap: $(check-unit-y)
check-report.tap: $(patsubst %,check-report-qtest-%.tap, $(QTEST_TARGETS)) check-report-unit.tap
-# FPU Emulation tests (aka softfloat)
-#
-# As we still have some places that need fixing the rules are a little
-# more complex than they need to be and have to override some of the
-# generic Makefile expansions. Once we are cleanly passing all
-# the tests we can simplify the make syntax.
-
-FP_TEST_BIN=$(BUILD_DIR)/tests/fp/fp-test
-
-# the build dir is created by configure
-$(FP_TEST_BIN): config-host.h $(test-util-obj-y)
- $(call quiet-command, \
- $(MAKE) $(SUBDIR_MAKEFLAGS) -C $(dir $@) V="$(V)" $(notdir $@), \
- "BUILD", "$(notdir $@)")
-
-# The full test suite can take a bit of time, default to a quick run
-# "-l 2 -r all" can take more than a day for some operations and is best
-# run manually
-FP_TL=-l 1 -r all
-
-# $1 = tests, $2 = description, $3 = test flags
-test-softfloat = $(call quiet-command, \
- cd $(BUILD_DIR)/tests/fp && \
- ./fp-test -s $(if $3,$3,$(FP_TL)) $1 > $2.out 2>&1 || \
- (cat $2.out && exit 1;), \
- "FLOAT TEST", $2)
-
-# Conversion Routines: Float to Float
-# FIXME: f32_to_f128 (broken), f64_to_f128 (broken)
-# FIXME: f128_to_f32(broken), f128_to_f64 (broken)
-# FIXME: f128_to_extF80 (broken)
-check-softfloat-conv-f2f: $(FP_TEST_BIN)
- $(call test-softfloat, \
- f16_to_f32 f16_to_f64 \
- f16_to_extF80 f16_to_f128 \
- f32_to_f16 f32_to_f64 \
- f32_to_extF80 \
- f64_to_f16 f64_to_f32 \
- extF80_to_f16 extF80_to_f32 \
- extF80_to_f64 extF80_to_f128 \
- f128_to_f16, \
- float-to-float)
-
-# Conversion Routines: Int and Uint to Float
-# FIXME: i32_to_extF80 (broken), i64_to_extF80 (broken)
-# ui32_to_f128 (not implemented)
-check-softfloat-conv-to-float: $(FP_TEST_BIN)
- $(call test-softfloat, \
- i32_to_f16 i64_to_f16 \
- i32_to_f32 i64_to_f32 \
- i32_to_f64 i64_to_f64 \
- i32_to_f128 i64_to_f128, int-to-float)
- $(call test-softfloat, \
- ui32_to_f16 ui64_to_f16 \
- ui32_to_f32 ui64_to_f32 \
- ui32_to_f64 ui64_to_f64 \
- ui32_to_extF80 ui64_to_extF80 \
- ui64_to_f128, uint-to-float)
-
-# Conversion Routines: Float to integers
-# FIXME: extF80_roundToInt (broken)
-check-softfloat-conv-to-int: $(FP_TEST_BIN)
- $(call test-softfloat, \
- f16_to_i32 f16_to_i32_r_minMag \
- f32_to_i32 f32_to_i32_r_minMag \
- f64_to_i32 f64_to_i32_r_minMag \
- extF80_to_i32 extF80_to_i32_r_minMag \
- f128_to_i32 f128_to_i32_r_minMag \
- f16_to_i64 f16_to_i64_r_minMag \
- f32_to_i64 f32_to_i64_r_minMag \
- f64_to_i64 f64_to_i64_r_minMag \
- extF80_to_i64 extF80_to_i64_r_minMag \
- f128_to_i64 f128_to_i64_r_minMag, \
- float-to-int)
- $(call test-softfloat, \
- f16_to_ui32 f16_to_ui32_r_minMag \
- f32_to_ui32 f32_to_ui32_r_minMag \
- f64_to_ui32 f64_to_ui32_r_minMag \
- extF80_to_ui32 extF80_to_ui32_r_minMag \
- f128_to_ui32 f128_to_ui32_r_minMag \
- f16_to_ui64 f16_to_ui64_r_minMag \
- f32_to_ui64 f32_to_ui64_r_minMag \
- f64_to_ui64 f64_to_ui64_r_minMag \
- extF80_to_ui64 extF80_to_ui64_r_minMag \
- f128_to_ui64 f128_to_ui64_r_minMag, \
- float-to-uint)
- $(call test-softfloat, \
- f16_roundToInt f32_roundToInt \
- f64_roundToInt f128_roundToInt, \
- round-to-integer)
-
-.PHONY: check-softfloat-conv
-check-softfloat-conv: check-softfloat-conv-f2f
-check-softfloat-conv: check-softfloat-conv-to-float
-check-softfloat-conv: check-softfloat-conv-to-int
-
-# Generic rule for all float operations
-#
-# Some patterns are overridden due to broken or missing tests.
-# Hopefully these can be removed over time.
-
-check-softfloat-%: $(FP_TEST_BIN)
- $(call test-softfloat, f16_$* f32_$* f64_$* extF80_$* f128_$*, $*)
-
-# Float Compare routines
-SF_COMPARE_OPS=eq eq_signaling le le_quiet lt_quiet
-SF_COMPARE_RULES=$(patsubst %,check-softfloat-%, $(SF_COMPARE_OPS))
-
-# FIXME: extF80_lt_quiet (broken)
-check-softfloat-lt_quiet: $(FP_TEST_BIN)
- $(call test-softfloat, \
- f16_lt_quiet f32_lt_quiet f64_lt_quiet \
- f128_lt_quiet, \
- lt_quiet)
-
-.PHONY: check-softfloat-compare
-check-softfloat-compare: $(SF_COMPARE_RULES)
-
-# Math Operations
-
-# FIXME: extF80_mulAdd (missing)
-check-softfloat-mulAdd: $(FP_TEST_BIN)
- $(call test-softfloat, \
- f16_mulAdd f32_mulAdd f64_mulAdd f128_mulAdd, \
- mulAdd,-l 1)
-
-# FIXME: extF80_rem (broken)
-check-softfloat-rem: $(FP_TEST_BIN)
- $(call test-softfloat, \
- f16_rem f32_rem f64_rem f128_rem, \
- rem)
-
-SF_MATH_OPS=add sub mul mulAdd div rem sqrt
-SF_MATH_RULES=$(patsubst %,check-softfloat-%, $(SF_MATH_OPS))
-
-.PHONY: check-softfloat-ops
-check-softfloat-ops: $(SF_MATH_RULES)
-
-# Finally a generic rule to test all of softfoat. If TCG isnt't
-# enabled we define a null operation which skips the tests.
-
-.PHONY: check-softfloat
-ifeq ($(CONFIG_TCG),y)
-build-softfloat: $(FP_TEST_BIN)
-check-softfloat: build-softfloat check-softfloat-conv check-softfloat-compare check-softfloat-ops
-else
-build-softfloat check-softfloat:
- $(call quiet-command, /bin/true, "FLOAT TEST", \
- "SKIPPED for non-TCG builds")
-endif
-
# Plugins
ifeq ($(CONFIG_PLUGIN),y)
.PHONY: plugins
@@ -953,7 +799,7 @@ check-qtest: $(patsubst %,check-qtest-%, $(QTEST_TARGETS))
ifeq ($(CONFIG_TOOLS),y)
check-block: $(patsubst %,check-%, $(check-block-y))
endif
-check-build: build-unit build-softfloat build-qtest
+check-build: build-unit build-qtest
check-clean:
rm -rf $(check-unit-y) tests/*.o tests/*/*.o $(QEMU_IOTESTS_HELPERS-y)
@@ -962,7 +808,7 @@ check-clean:
rm -f tests/qtest/dbus-vmstate1-gen-timestamp
rm -rf $(TESTS_VENV_DIR) $(TESTS_RESULTS_DIR)
-check: check-block check-qapi-schema check-unit check-softfloat check-qtest
+check: check-block check-qapi-schema check-unit check-qtest
clean: check-clean