Dedup simulation flags

This commit is contained in:
abejgonzalez
2020-08-21 17:27:50 -07:00
parent fa97359516
commit 06747e6cff
3 changed files with 31 additions and 38 deletions

24
sims/common-sim-flags.mk Normal file
View File

@@ -0,0 +1,24 @@
#----------------------------------------------------------------------------------------
# common gcc configuration/optimization
#----------------------------------------------------------------------------------------
SIM_OPT_CXXFLAGS := -O3
SIM_CXXFLAGS = \
$(CXXFLAGS) \
$(SIM_OPT_CXXFLAGS) \
-std=c++11 \
-I$(RISCV)/include \
-I$(dramsim_dir) \
-I$(build_dir) \
$(EXTRA_SIM_CXXFLAGS)
SIM_LDFLAGS = \
$(LDFLAGS) \
-L$(RISCV)/lib \
-Wl,-rpath,$(RISCV)/lib \
-L$(sim_dir) \
-L$(dramsim_dir) \
-lfesvr \
-lpthread \
-ldramsim \
$(EXTRA_SIM_LDFLAGS)

View File

@@ -141,35 +141,19 @@ VERILATOR_NONCC_OPTS = \
#---------------------------------------------------------------------------------------- #----------------------------------------------------------------------------------------
# gcc configuration/optimization # gcc configuration/optimization
#---------------------------------------------------------------------------------------- #----------------------------------------------------------------------------------------
# -flto slows down compilation on small-memory and breaks on firesim-manager include $(base_dir)/sims/common-sim-flags.mk
CXX_OPT_FLAGS := -O3
VERILATOR_CXXFLAGS = \ VERILATOR_CXXFLAGS = \
$(CXXFLAGS) \ $(SIM_CXXFLAGS) \
$(RUNTIME_PROFILING_CFLAGS) \ $(RUNTIME_PROFILING_CFLAGS) \
$(TRACING_CFLAGS) \ $(TRACING_CFLAGS) \
$(CXX_OPT_FLAGS) \
-std=c++11 \
-D__STDC_FORMAT_MACROS \ -D__STDC_FORMAT_MACROS \
-DTEST_HARNESS=V$(VLOG_MODEL) \ -DTEST_HARNESS=V$(VLOG_MODEL) \
-DVERILATOR \ -DVERILATOR \
-I$(RISCV)/include \
-I$(dramsim_dir) \
-I$(build_dir) \
-include $(build_dir)/$(long_name).plusArgs \ -include $(build_dir)/$(long_name).plusArgs \
-include $(build_dir)/verilator.h \ -include $(build_dir)/verilator.h
$(EXTRA_SIM_CXXFLAGS)
VERILATOR_LDFLAGS = \ VERILATOR_LDFLAGS = $(SIM_LDFLAGS)
$(LDFLAGS) \
-L$(RISCV)/lib \
-Wl,-rpath,$(RISCV)/lib \
-L$(sim_dir) \
-L$(dramsim_dir) \
-lfesvr \
-lpthread \
-ldramsim \
$(EXTRA_SIM_LDFLAGS)
VERILATOR_CC_OPTS = \ VERILATOR_CC_OPTS = \
-CFLAGS "$(VERILATOR_CXXFLAGS)" \ -CFLAGS "$(VERILATOR_CXXFLAGS)" \

21
vcs.mk
View File

@@ -14,25 +14,10 @@ RESET_DELAY ?= 777.7
#---------------------------------------------------------------------------------------- #----------------------------------------------------------------------------------------
# gcc configuration/optimization # gcc configuration/optimization
#---------------------------------------------------------------------------------------- #----------------------------------------------------------------------------------------
CXX_OPT_FLAGS := -O3 include $(base_dir)/sims/common-sim-flags.mk
VCS_CXXFLAGS = \ VCS_CXXFLAGS = $(SIM_CXXFLAGS)
$(CXXFLAGS) \ VCS_LDFLAGS = $(SIM_LDFLAGS)
$(CXX_OPT_FLAGS) \
-I$(RISCV)/include \
-I$(dramsim_dir) \
-std=c++11 \
$(EXTRA_SIM_CXXFLAGS)
VCS_LDFLAGS = \
$(LDFLAGS) \
-L$(RISCV)/lib \
-Wl,-rpath,$(RISCV)/lib \
-L$(sim_dir) \
-L$(dramsim_dir) \
-lfesvr \
-ldramsim \
$(EXTRA_SIM_LDFLAGS)
# vcs requires LDFLAGS to not include library names (i.e. -l needs to be separate) # vcs requires LDFLAGS to not include library names (i.e. -l needs to be separate)
VCS_CC_OPTS = \ VCS_CC_OPTS = \