1be5cac17SAlex Bennée# 2*7893e42dSPhilippe Mathieu-Daudé# Xtensa system tests 3be5cac17SAlex Bennée# 4be5cac17SAlex Bennée 551139fb3SMax FilippovCORE=dc232b 651139fb3SMax Filippovifneq ($(shell $(QEMU) -cpu help | grep -w $(CORE)),) 7be5cac17SAlex Bennée 8be5cac17SAlex BennéeXTENSA_SRC = $(SRC_PATH)/tests/tcg/xtensa 9be5cac17SAlex BennéeXTENSA_ALL = $(filter-out $(XTENSA_SRC)/linker.ld.S,$(wildcard $(XTENSA_SRC)/*.S)) 10be5cac17SAlex BennéeXTENSA_TESTS = $(patsubst $(XTENSA_SRC)/%.S, %, $(XTENSA_ALL)) 11be5cac17SAlex Bennée# Filter out common blobs and broken tests 12bc19449aSMax FilippovXTENSA_BROKEN_TESTS = crt vectors 13be5cac17SAlex BennéeXTENSA_USABLE_TESTS = $(filter-out $(XTENSA_BROKEN_TESTS), $(XTENSA_TESTS)) 14be5cac17SAlex Bennée 15be5cac17SAlex Bennée# add to the list of tests 16be5cac17SAlex BennéeTESTS += $(XTENSA_USABLE_TESTS) 17be5cac17SAlex BennéeVPATH += $(XTENSA_SRC) 18be5cac17SAlex Bennée 19be5cac17SAlex BennéeQEMU_OPTS+=-M sim -cpu $(CORE) -nographic -semihosting -icount 6 $(EXTFLAGS) -kernel 20be5cac17SAlex Bennée 21be5cac17SAlex BennéeINCLUDE_DIRS = $(SRC_PATH)/target/xtensa/core-$(CORE) 22be5cac17SAlex BennéeXTENSA_INC = $(addprefix -I,$(INCLUDE_DIRS)) 23be5cac17SAlex Bennée 24be5cac17SAlex Bennéevectors_ASFLAGS = -mtext-section-literals 25be5cac17SAlex BennéeASFLAGS = -Wa,--no-absolute-literals 26be5cac17SAlex BennéeLDFLAGS = -Tlinker.ld -nostartfiles -nostdlib 27be5cac17SAlex Bennée 28be5cac17SAlex BennéeCRT = crt.o vectors.o 295161dba8SMax FilippovCLEANFILES += linker.ld 30be5cac17SAlex Bennée 31be5cac17SAlex Bennéelinker.ld: linker.ld.S 32be5cac17SAlex Bennée $(CC) $(XTENSA_INC) -E -P $< -o $@ 33be5cac17SAlex Bennée 34be5cac17SAlex Bennée$(XTENSA_USABLE_TESTS): linker.ld macros.inc $(CRT) Makefile.softmmu-target 35be5cac17SAlex Bennée 36be5cac17SAlex Bennée# special rule for common blobs 37be5cac17SAlex Bennée%.o: %.S 386a9e0ef3SPaolo Bonzini $(CC) $(XTENSA_INC) $($*_ASFLAGS) $(ASFLAGS) $(EXTRA_CFLAGS) -c $< -o $@ 39be5cac17SAlex Bennée 40be5cac17SAlex Bennée%: %.S 416a9e0ef3SPaolo Bonzini $(CC) $(XTENSA_INC) $(ASFLAGS) $(EXTRA_CFLAGS) $< -o $@ $(LDFLAGS) $(NOSTDFLAGS) $(CRT) 42be5cac17SAlex Bennée 43be5cac17SAlex Bennéeendif 44d044b7c3SAlex Bennée 45d044b7c3SAlex Bennée# We don't currently support the multiarch system tests 46d044b7c3SAlex Bennéeundefine MULTIARCH_TESTS 47