From 6947f2e89822dda4dcc832a3c14b1619a5440369 Mon Sep 17 00:00:00 2001 From: Scott Beamer Date: Tue, 11 Feb 2020 14:50:14 -0800 Subject: [PATCH] create boom (2018) dir --- .gitmodules | 3 ++ boom/.gitignore | 4 +++ boom/Makefile | 29 ++++++++++++++++++ boom/boom-template.commit | 1 + .../boom.system.TestHarness.BoomConfig.fir | 0 boom/dhrystone-boom.riscv | Bin 0 -> 19352 bytes rocket/emulator-head.cc => boom/emulator.cc | 0 boom/fesvr.commit | 1 + boom/riscv-fesvr | 1 + rocket/Makefile | 26 ---------------- 10 files changed, 39 insertions(+), 26 deletions(-) create mode 100644 boom/.gitignore create mode 100644 boom/Makefile create mode 100644 boom/boom-template.commit rename {rocket => boom}/boom.system.TestHarness.BoomConfig.fir (100%) create mode 100644 boom/dhrystone-boom.riscv rename rocket/emulator-head.cc => boom/emulator.cc (100%) create mode 100644 boom/fesvr.commit create mode 160000 boom/riscv-fesvr delete mode 100644 rocket/Makefile diff --git a/.gitmodules b/.gitmodules index 0584ce1..43f4539 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,6 @@ [submodule "rocket18/riscv-fesvr"] path = rocket18/riscv-fesvr url = https://github.com/riscv/riscv-fesvr.git +[submodule "boom/riscv-fesvr"] + path = boom/riscv-fesvr + url = https://github.com/riscv/riscv-fesvr.git diff --git a/boom/.gitignore b/boom/.gitignore new file mode 100644 index 0000000..80c770f --- /dev/null +++ b/boom/.gitignore @@ -0,0 +1,4 @@ +.riscv-fesvr/build +emulator +TestHarness.h +riscv/ diff --git a/boom/Makefile b/boom/Makefile new file mode 100644 index 0000000..40a67d9 --- /dev/null +++ b/boom/Makefile @@ -0,0 +1,29 @@ +CXXFLAGS = -O3 -std=c++11 +CLANG_FLAGS = -fno-slp-vectorize -fbracket-depth=1024 + +UNAME_OS := $(shell uname -s) +ifeq ($(UNAME_OS),Darwin) + CXXFLAGS += $(CLANG_FLAGS) +endif + +ifeq ($(ALL_ON),1) + CXXFLAGS += -DALL_ON +endif + +INCLUDES = -I../csrc -Iriscv/include -I../firrtl-sig + +LIBS = -Lriscv/lib -Wl,-rpath,riscv/lib -lfesvr -lpthread + +riscv_dir := $(shell pwd)/riscv + +riscv/lib/libfesvr.so: + git submodule update --init riscv-fesvr + cd riscv-fesvr; git checkout `cat ../fesvr.commit` + mkdir $(riscv_dir) + cd riscv-fesvr; mkdir build; cd build; ../configure --prefix=$(riscv_dir) --target=riscv64-unknown-elf; make install + +TestHarness.h: + cd ../essent; sbt 'run ../boom/boom.system.TestHarness.BoomConfig.fir' + +emulator: emulator.cc TestHarness.h riscv/lib/libfesvr.so + $(CXX) $(CXXFLAGS) $(INCLUDES) emulator.cc -o emulator $(LIBS) diff --git a/boom/boom-template.commit b/boom/boom-template.commit new file mode 100644 index 0000000..9917221 --- /dev/null +++ b/boom/boom-template.commit @@ -0,0 +1 @@ +e2a41ddc2a325850eaf1cabb353eed9728adfb8f diff --git a/rocket/boom.system.TestHarness.BoomConfig.fir b/boom/boom.system.TestHarness.BoomConfig.fir similarity index 100% rename from rocket/boom.system.TestHarness.BoomConfig.fir rename to boom/boom.system.TestHarness.BoomConfig.fir diff --git a/boom/dhrystone-boom.riscv b/boom/dhrystone-boom.riscv new file mode 100644 index 0000000000000000000000000000000000000000..7d4770b8f5a7e14a472c63c259a36f77dfd4eafa GIT binary patch literal 19352 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 M5poz=K2`pI0S=t