blob: e0a024b0ab5141c69a793b78b65c980f15e47e18 (
plain)
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
|
DEBUG?=no
TRACE?=no
TRACE_INSTRUCTION?=no
TRACE_REG?=no
PRINT_PERF?=no
VGA?=yes
TRACE_START=0
ADDCFLAGS += -CFLAGS -pthread
ADDCFLAGS += -CFLAGS -lSDL2
ADDCFLAGS += -LDFLAGS -lSDL2
ifeq ($(TRACE),yes)
VERILATOR_ARGS += --trace
ADDCFLAGS += -CFLAGS -DTRACE --trace-fst
endif
ifeq ($(DEBUG),yes)
ADDCFLAGS += -CFLAGS "-g3 -O0"
endif
ifneq ($(DEBUG),yes)
ADDCFLAGS += -CFLAGS "-O3"
endif
ifeq ($(PRINT_PERF),yes)
ADDCFLAGS += -CFLAGS -DPRINT_PERF
endif
ifeq ($(VGA),yes)
ADDCFLAGS += -CFLAGS -DVGA
endif
ifeq ($(TRACE_INSTRUCTION),yes)
ADDCFLAGS += -CFLAGS -DTRACE_INSTRUCTION
endif
ifeq ($(TRACE_REG),yes)
ADDCFLAGS += -CFLAGS -DTRACE_REG
endif
ADDCFLAGS += -CFLAGS -DTRACE_START=${TRACE_START}
all: clean compile
run: compile
./obj_dir/VBriey
verilate: ../../../../Briey.v
rm -f Briey.v*.bin
cp ../../../../Briey.v*.bin . | true
verilator -cc ../../../../Briey.v -CFLAGS -std=c++11 ${ADDCFLAGS} --gdbbt ${VERILATOR_ARGS} -Wno-WIDTH -Wno-UNOPTFLAT --x-assign unique --exe main.cpp
compile: verilate
make -j -C obj_dir/ -f VBriey.mk VBriey
clean:
rm -f Briey.v*.bin
rm -rf obj_dir
|