1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107
|
ifneq ($(OS),Darwin)
AARCH64_PREFIX ?= aarch64-linux-gnu-
endif
litmus-aarch64-test:: litmus-cata-aarch64-test-std
litmus-cata-aarch64-test-std: TEMP_DIR:=$(shell mktemp -d)
litmus-cata-aarch64-test-std:
$(LITMUS) \
-set-libdir $(LITMUS_LIB_DIR) \
-gcc=$(AARCH64_PREFIX)gcc \
-ccopts='-march=armv8-a+lse' \
-o $(TEMP_DIR) \
-mode std -a 4 \
catalogue/aarch64/tests/@all
make $(SILENTOPT) -C $(TEMP_DIR) -j $(J)
if $(RUN_TESTS); then ( cd $(TEMP_DIR) && sh run.sh ); fi
$(RM) -r $(TEMP_DIR)
@ echo "litmus7 in -mode std catalogue aarch64 tests: OK"
litmus-aarch64-test:: litmus-cata-aarch64-test-presi
litmus-cata-aarch64-test-presi: TEMP_DIR:=$(shell mktemp -d)
litmus-cata-aarch64-test-presi:
$(LITMUS) \
-set-libdir $(LITMUS_LIB_DIR) \
-gcc=$(AARCH64_PREFIX)gcc \
-ccopts='-march=armv8-a+lse' \
-o $(TEMP_DIR) \
-mode presi -a 4 \
catalogue/aarch64/tests/@all
make $(SILENTOPT) -C $(TEMP_DIR) -j $(J)
if $(RUN_TESTS); then ( cd $(TEMP_DIR) && sh run.sh ); fi
$(RM) -r $(TEMP_DIR)
@ echo "litmus7 in -mode presi catalogue aarch64 tests: OK"
litmus-aarch64-test:: litmus-cata-aarch64-ifetch-test
litmus-cata-aarch64-ifetch-test: TEMP_DIR:=$(shell mktemp -d)
litmus-cata-aarch64-ifetch-test:
$(LITMUS) \
-set-libdir $(LITMUS_LIB_DIR) \
-gcc=$(AARCH64_PREFIX)gcc \
-ccopts='-march=armv8-a+lse' \
-o $(TEMP_DIR) \
-mode std -a 4 \
catalogue/aarch64-ifetch/tests/@nofault
make $(SILENTOPT) -C $(TEMP_DIR) -j $(J)
if $(RUN_TESTS); then ( cd $(TEMP_DIR) && sh run.sh ); fi
$(RM) -r $(TEMP_DIR)
@ echo "litmus7 in -mode std catalogue aarch64-ifetch tests: OK"
KUT_AARCH64_PREFFIX = $(AARCH64_PREFIX)
ifeq ($(OS),Darwin)
KUT_AARCH64_PREFFIX = aarch64-elf-
endif
KUT_CONFIG_PARAMS=--arch=arm64 --page-size=4k --cross-prefix=$(KUT_AARCH64_PREFFIX)
KUT_DIR_AARCH64:=$(shell mktemp -d)
litmus-aarch64-dep:
cd $(KUT_DIR_AARCH64); \
git clone -q https://gitlab.com/kvm-unit-tests/kvm-unit-tests.git; \
cd kvm-unit-tests; \
./configure $(KUT_CONFIG_PARAMS); \
make $(SILENTOPT)
litmus-aarch64-test:: litmus-cata-aarch64-test-kvm
litmus-cata-aarch64-test-kvm: litmus-aarch64-dep
mkdir $(KUT_DIR_AARCH64)/kvm-unit-tests/t
$(LITMUS) \
-set-libdir $(LITMUS_LIB_DIR) \
-o $(KUT_DIR_AARCH64)/kvm-unit-tests/t \
-mach kvm-armv8.1 -a 4 \
catalogue/aarch64/tests/@all
cd $(KUT_DIR_AARCH64)/kvm-unit-tests/t; make $(SILENTOPT) -j $(J)
if $(RUN_TESTS); then ( cd $(KUT_DIR_AARCH64)/kvm-unit-tests && sh t/run.sh ); fi
$(RM) -r $(KUT_DIR_AARCH64)/kvm-unit-tests/t
@ echo "litmus7 in -mode kvm catalogue aarch64 tests: OK"
litmus-aarch64-test:: litmus-cata-aarch64-VMSA-test-kvm
litmus-cata-aarch64-VMSA-test-kvm: litmus-aarch64-dep
mkdir $(KUT_DIR_AARCH64)/kvm-unit-tests/t
$(LITMUS) \
-set-libdir $(LITMUS_LIB_DIR) \
-o $(KUT_DIR_AARCH64)/kvm-unit-tests/t \
-mach kvm-armv8.1+rcpc -a 4 -s 10 -r 10 \
catalogue/aarch64-VMSA/tests/@all
cd $(KUT_DIR_AARCH64)/kvm-unit-tests/t; make $(SILENTOPT) -j $(J)
if $(RUN_TESTS); then ( cd $(KUT_DIR_AARCH64)/kvm-unit-tests && sh t/run.sh ); fi
$(RM) -r $(KUT_DIR_AARCH64)/kvm-unit-tests/t
@ echo "litmus7 in -mode kvm catalogue aarch64-VMSA tests: OK"
litmus-aarch64-test:: litmus-cata-aarch64-ifetch-test-kvm
litmus-cata-aarch64-ifetch-test-kvm: litmus-aarch64-dep
mkdir $(KUT_DIR_AARCH64)/kvm-unit-tests/t
$(LITMUS) \
-set-libdir $(LITMUS_LIB_DIR) \
-o $(KUT_DIR_AARCH64)/kvm-unit-tests/t \
-mach kvm-armv8.1 -variant self -a 4 -s 10 -r 10 \
catalogue/aarch64-ifetch/tests/@all
cd $(KUT_DIR_AARCH64)/kvm-unit-tests/t; make $(SILENTOPT) -j $(J)
#Disabled as some tests are not terminating. Those tests are
# WRC-inst-modified-2 IDC1.WRC-inst-modified-2
# DIC1.WRC-inst-modified-2 UDF+2FH
if false; then ( cd $(KUT_DIR_AARCH64)/kvm-unit-tests && sh t/run.sh ); fi
$(RM) -r $(KUT_DIR_AARCH64)/kvm-unit-tests/t
@ echo "litmus7 in -mode kvm catalogue aarch64-ifetch tests: OK"
litmus-test:: litmus-aarch64-test
|