-
Notifications
You must be signed in to change notification settings - Fork 61
/
Makefile.aarch64
104 lines (94 loc) · 3.77 KB
/
Makefile.aarch64
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
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)/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 -a 4 \
catalogue/aarch64-VMSA/tests/@all
cd $(KUT_DIR_AARCH64)/kvm-unit-tests/t; make $(SILENTOPT) -j $(J)
if $(RUN_TESTS); then ( cd $(KUT_DIR)/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 \
catalogue/aarch64-ifetch/tests/@all
cd $(KUT_DIR_AARCH64)/kvm-unit-tests/t; make $(SILENTOPT) -j $(J)
if $(RUN_TESTS); then ( cd $(KUT_DIR)/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