| # -*- Mode: makefile -*- |
| # |
| # ARM - included from tests/tcg/Makefile |
| # |
| |
| ARM_SRC=$(SRC_PATH)/tests/tcg/arm |
| |
| # Set search path for all sources |
| VPATH += $(ARM_SRC) |
| |
| 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) |
| |
| # Semihosting smoke test for linux-user |
| ARM_TESTS += semihosting |
| run-semihosting: semihosting |
| $(call run-test,$<,$(QEMU) $< 2> $<.err, "$< on $(TARGET_NAME)") |
| |
| run-plugin-semihosting-with-%: |
| $(call run-test, $@, $(QEMU) $(QEMU_OPTS) \ |
| -plugin $(PLUGIN_DIR)/$(call extract-plugin,$@) \ |
| $(call strip-plugin,$<) 2> $<.err, \ |
| "$< on $(TARGET_NAME) with $*") |
| |
| TESTS += $(ARM_TESTS) |
| |
| # On ARM Linux only supports 4k pages |
| EXTRA_RUNS+=run-test-mmap-4096 |