blob: 664b30ce817778aab8a8b10c9b67eed6b4c416f8 [file] [log] [blame]
Edgar E. Iglesiasbee5a5f2012-01-13 11:09:56 +01001-include ../../../config-host.mak
thsdd43edf2007-10-08 13:32:20 +00002
3CROSS=crisv32-axis-linux-gnu-
Edgar E. Iglesiasbee5a5f2012-01-13 11:09:56 +01004SIM=../../../cris-linux-user/qemu-cris -L ./
thsdd43edf2007-10-08 13:32:20 +00005SIMG=cris-axis-linux-gnu-run --sysroot=./
6
7CC = $(CROSS)gcc
8#AS = $(CROSS)as
9AS = $(CC) -x assembler-with-cpp
10SIZE = $(CROSS)size
11LD = $(CC)
12OBJCOPY = $(CROSS)objcopy
13
14# we rely on GCC inline:ing the stuff we tell it to in many places here.
15CFLAGS = -Winline -Wall -g -O2 -static
16NOSTDFLAGS = -nostartfiles -nostdlib
Edgar E. Iglesiasbee5a5f2012-01-13 11:09:56 +010017ASFLAGS += -g -Wa,-I,$(SRC_PATH)/tests/tcg/cris/
thsdd43edf2007-10-08 13:32:20 +000018LDLIBS =
19NOSTDLIBS = -lgcc
20
21CRT = crt.o
22SYS = sys.o
23TESTCASES += check_abs.tst
24TESTCASES += check_addc.tst
25TESTCASES += check_addcm.tst
Rabin Vincent4a58f352016-08-24 10:42:16 +020026TESTCASES += check_addcv17.tst
thsdd43edf2007-10-08 13:32:20 +000027TESTCASES += check_addo.tst
28TESTCASES += check_addoq.tst
29TESTCASES += check_addi.tst
30TESTCASES += check_addiv32.tst
31TESTCASES += check_addm.tst
32TESTCASES += check_addr.tst
33TESTCASES += check_addq.tst
34TESTCASES += check_addxc.tst
35TESTCASES += check_addxm.tst
36TESTCASES += check_addxr.tst
37TESTCASES += check_andc.tst
38TESTCASES += check_andm.tst
39TESTCASES += check_andr.tst
40TESTCASES += check_andq.tst
41TESTCASES += check_asr.tst
42TESTCASES += check_ba.tst
43TESTCASES += check_bas.tst
44TESTCASES += check_bcc.tst
45TESTCASES += check_bound.tst
46TESTCASES += check_boundc.tst
47TESTCASES += check_boundr.tst
48TESTCASES += check_btst.tst
49TESTCASES += check_clearfv32.tst
50TESTCASES += check_cmpc.tst
51TESTCASES += check_cmpr.tst
52TESTCASES += check_cmpq.tst
53TESTCASES += check_cmpm.tst
54TESTCASES += check_cmpxc.tst
55TESTCASES += check_cmpxm.tst
56TESTCASES += check_cmp-2.tst
57TESTCASES += check_clrjmp1.tst
58TESTCASES += check_dstep.tst
edgar_igl1b893ef2008-02-25 10:00:07 +000059TESTCASES += check_ftag.tst
thsdd43edf2007-10-08 13:32:20 +000060TESTCASES += check_int64.tst
61# check_jsr is broken.
62#TESTCASES += check_jsr.tst
63TESTCASES += check_mcp.tst
64TESTCASES += check_movei.tst
65TESTCASES += check_mover.tst
66TESTCASES += check_moverm.tst
67TESTCASES += check_moveq.tst
68TESTCASES += check_movemr.tst
69TESTCASES += check_movemrv32.tst
70TESTCASES += check_movecr.tst
71TESTCASES += check_movmp.tst
72TESTCASES += check_movpr.tst
73TESTCASES += check_movprv32.tst
74TESTCASES += check_movdelsr1.tst
75TESTCASES += check_movpmv32.tst
76TESTCASES += check_movsr.tst
77TESTCASES += check_movsm.tst
78TESTCASES += check_movscr.tst
79TESTCASES += check_movur.tst
80TESTCASES += check_movum.tst
81TESTCASES += check_movucr.tst
82TESTCASES += check_mulx.tst
83TESTCASES += check_mulv32.tst
84TESTCASES += check_neg.tst
85TESTCASES += check_not.tst
86TESTCASES += check_lz.tst
87TESTCASES += check_lapc.tst
88TESTCASES += check_lsl.tst
89TESTCASES += check_lsr.tst
90TESTCASES += check_orc.tst
91TESTCASES += check_orm.tst
92TESTCASES += check_orr.tst
93TESTCASES += check_orq.tst
94TESTCASES += check_ret.tst
95TESTCASES += check_swap.tst
96TESTCASES += check_scc.tst
97TESTCASES += check_subc.tst
98TESTCASES += check_subq.tst
99TESTCASES += check_subr.tst
100TESTCASES += check_subm.tst
101TESTCASES += check_glibc_kernelversion.tst
102TESTCASES += check_xarith.tst
103
104TESTCASES += check_hello.ctst
105TESTCASES += check_stat1.ctst
106TESTCASES += check_stat2.ctst
107TESTCASES += check_stat3.ctst
108TESTCASES += check_stat4.ctst
109TESTCASES += check_openpf1.ctst
110TESTCASES += check_openpf2.ctst
111TESTCASES += check_openpf3.ctst
thsdd43edf2007-10-08 13:32:20 +0000112TESTCASES += check_openpf5.ctst
113TESTCASES += check_mapbrk.ctst
114TESTCASES += check_mmap1.ctst
115TESTCASES += check_mmap2.ctst
116TESTCASES += check_mmap3.ctst
edgar_iglcbdbb772008-02-28 11:23:20 +0000117TESTCASES += check_sigalrm.ctst
thsdd43edf2007-10-08 13:32:20 +0000118TESTCASES += check_time2.ctst
edgar_iglef967792009-01-07 14:19:38 +0000119TESTCASES += check_settls1.ctst
thsdd43edf2007-10-08 13:32:20 +0000120
121TESTCASES += check_gcctorture_pr28634-1.ctst
122#TESTCASES += check_gcctorture_pr28634.ctst
123
124all: build
125
Edgar E. Iglesiasbee5a5f2012-01-13 11:09:56 +0100126%.o: $(SRC_PATH)/tests/tcg/cris/%.c
thsdd43edf2007-10-08 13:32:20 +0000127 $(CC) $(CFLAGS) -c $< -o $@
128
Edgar E. Iglesiasbee5a5f2012-01-13 11:09:56 +0100129%.o: $(SRC_PATH)/tests/tcg/cris/%.s
thsdd43edf2007-10-08 13:32:20 +0000130 $(AS) $(ASFLAGS) -c $< -o $@
131
132%.tst: %.o
133 $(CC) $(CFLAGS) $(NOSTDFLAGS) $(LDLIBS) $(NOSTDLIBS) $(CRT) $< $(SYS) -o $@
134
135%.ctst: %.o
136 $(CC) $(CFLAGS) $(LDLIBS) $< -o $@
137
Rabin Vincent4a58f352016-08-24 10:42:16 +0200138
139sysv10.o: sys.c
140 $(CC) $(CFLAGS) -mcpu=v10 -c $< -o $@
141
142crtv10.o: crt.s
143 $(AS) $(ASFLAGS) -mcpu=v10 -c $< -o $@
144
145check_addcv17.tst: ASFLAGS += -mcpu=v10
146check_addcv17.tst: CRT := crtv10.o
147check_addcv17.tst: SYS := sysv10.o
148check_addcv17.tst: crtv10.o sysv10.o
149
thsdd43edf2007-10-08 13:32:20 +0000150build: $(CRT) $(SYS) $(TESTCASES)
151
152check: $(CRT) $(SYS) $(TESTCASES)
Eric Blakeb43671f2017-07-03 13:09:50 -0500153 @printf "\nQEMU simulator.\n"
edgar_igl31328112008-06-06 11:07:50 +0000154 for case in $(TESTCASES); do \
Eric Blakeb43671f2017-07-03 13:09:50 -0500155 printf %s "$$case "; \
Rabin Vincent4a58f352016-08-24 10:42:16 +0200156 SIMARGS=; \
157 case $$case in *v17*) SIMARGS="-cpu crisv17";; esac; \
158 $(SIM) $$SIMARGS ./$$case; \
thsdd43edf2007-10-08 13:32:20 +0000159 done
160check-g: $(CRT) $(SYS) $(TESTCASES)
Eric Blakeb43671f2017-07-03 13:09:50 -0500161 @printf "\nGDB simulator.\n"
thsdd43edf2007-10-08 13:32:20 +0000162 @for case in $(TESTCASES); do \
Eric Blakeb43671f2017-07-03 13:09:50 -0500163 printf %s "$$case "; \
thsdd43edf2007-10-08 13:32:20 +0000164 $(SIMG) $$case; \
165 done
166
167clean:
Rabin Vincent4a58f352016-08-24 10:42:16 +0200168 $(RM) -fr $(TESTCASES) *.o