# -*- Mode: makefile -*-
#
# ARM - included from tests/tcg/Makefile
#

ARM_SRC=$(SRC_PATH)/tests/tcg/arm

# Set search path for all sources
VPATH 		+= $(ARM_SRC)

config-cc.mak: Makefile
	$(quiet-@)( \
	    $(call cc-option,-fno-integrated-as, CROSS_CC_HAS_FNIA)) 3> config-cc.mak
-include config-cc.mak

float_madds: CFLAGS+=-mfpu=neon-vfpv4

# Basic Hello World
ARM_TESTS = hello-arm
hello-arm: CFLAGS+=-marm -ffreestanding -fno-stack-protector
hello-arm: LDFLAGS+=-nostdlib

# IWMXT floating point extensions
ARM_TESTS += test-arm-iwmmxt
# Clang assembler does not support IWMXT, so use the external assembler.
test-arm-iwmmxt: CFLAGS += -marm -march=iwmmxt -mabi=aapcs -mfpu=fpv4-sp-d16 $(CROSS_CC_HAS_FNIA)
test-arm-iwmmxt: test-arm-iwmmxt.S
	$(CC) $(CFLAGS) -Wa,--noexecstack $< -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) $<)
	$(call diff-out,fcvt,$(ARM_SRC)/fcvt.ref)

# PC alignment test
ARM_TESTS += pcalign-a32
pcalign-a32: CFLAGS+=-marm

ifeq ($(CONFIG_ARM_COMPATIBLE_SEMIHOSTING),y)

# Semihosting smoke test for linux-user
semihosting: CFLAGS += -mthumb

ARM_TESTS += semihosting-arm
semihosting-arm: CFLAGS += -marm -I$(SRC_PATH)/tests/tcg/$(TARGET_NAME)
semihosting-arm: semihosting.c
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)

run-semihosting-arm: semihosting-arm
	$(call run-test,$<,$(QEMU) $< 2> $<.err)

ARM_TESTS += semiconsole-arm

semiconsole: CFLAGS += -mthumb

semiconsole-arm: CFLAGS += -marm -I$(SRC_PATH)/tests/tcg/$(TARGET_NAME)
semiconsole-arm: semihosting.c
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)

run-semiconsole-arm: semiconsole-arm
	$(call skip-test, $<, "MANUAL ONLY")

endif

ARM_TESTS += commpage

# Vector SHA1
sha1-vector: CFLAGS=-O3
sha1-vector: sha1.c
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)
run-sha1-vector: sha1-vector run-sha1
	$(call run-test, $<, $(QEMU) $(QEMU_OPTS) $<)
	$(call diff-out, sha1-vector, sha1.out)

ARM_TESTS += sha1-vector

# Vector versions of sha512 (-O3 triggers vectorisation)
sha512-vector: CFLAGS=-O3
sha512-vector: sha512.c
	$(CC) $(CFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS)

ARM_TESTS += sha512-vector

TESTS += $(ARM_TESTS)
