Clean up benchmarks; support uarch-specific counters
[riscv-tests.git] / benchmarks / spmv / bmark.mk
1 #=======================================================================
2 # UCB CS250 Makefile fragment for benchmarks
3 #-----------------------------------------------------------------------
4 #
5 # Each benchmark directory should have its own fragment which
6 # essentially lists what the source files are and how to link them
7 # into an riscv and/or host executable. All variables should include
8 # the benchmark name as a prefix so that they are unique.
9 #
10
11 spmv_c_src = \
12 spmv_main.c \
13 syscalls.c \
14
15 spmv_riscv_src = \
16 crt.S \
17
18 spmv_c_objs = $(patsubst %.c, %.o, $(spmv_c_src))
19 spmv_riscv_objs = $(patsubst %.S, %.o, $(spmv_riscv_src))
20
21 spmv_host_bin = spmv.host
22 $(spmv_host_bin) : $(spmv_c_src)
23 $(HOST_COMP) $^ -o $(spmv_host_bin)
24
25 spmv_riscv_bin = spmv.riscv
26 $(spmv_riscv_bin) : $(spmv_c_objs) $(spmv_riscv_objs)
27 $(RISCV_LINK) $(spmv_c_objs) $(spmv_riscv_objs) -o $(spmv_riscv_bin) $(RISCV_LINK_OPTS)
28
29 junk += $(spmv_c_objs) $(spmv_riscv_objs) \
30 $(spmv_host_bin) $(spmv_riscv_bin)