@@ -8,7 +8,8 @@ project(dbt-rise-riscv VERSION 2.1.0 LANGUAGES C CXX)
88
99option (UPDATE_EXTERNAL_PROJECT "Whether to pull changes in external projects" ON )
1010option (OPTIMIZE_FOR_NATIVE "Build with -march=native" OFF )
11- option (NO_GENERIC_CORES "Leave out the genric cores to improve build times" OFF )
11+ option (NO_GENERIC_CORES "Leave out the generic cores to improve build times" OFF )
12+ option (DBT_RISE_RISCV_ENABLE_VECTOR "Build RISC-V vector cores and VMs" ON )
1213include (GNUInstallDirs )
1314include (flink )
1415
@@ -80,21 +81,25 @@ if(NOT NO_GENERIC_CORES)
8081 src/iss/arch/rv32i.cpp
8182 src/iss/arch/rv32imac.cpp
8283 src/iss/arch/rv32gc.cpp
83- src/iss/arch/rv32gcv.cpp
8484 src/iss/arch/rv64i.cpp
8585 src/iss/arch/rv64imac.cpp
8686 src/iss/arch/rv64gc.cpp
87- src/iss/arch/rv64gcv.cpp
8887 src/vm/interp/vm_rv32i.cpp
8988 src/vm/interp/vm_rv32imac.cpp
9089 src/vm/interp/vm_rv32gc.cpp
91- src/vm/interp/vm_rv32gcv.cpp
9290 src/vm/interp/vm_rv64i.cpp
9391 src/vm/interp/vm_rv64imac.cpp
9492 src/vm/interp/vm_rv64gc.cpp
9593 src/vm/interp/vm_rv64gc_mp.cpp
96- src/vm/interp/vm_rv64gcv.cpp
9794 )
95+ if (DBT_RISE_RISCV_ENABLE_VECTOR)
96+ list (APPEND LIB_SOURCES
97+ src/iss/arch/rv32gcv.cpp
98+ src/iss/arch/rv64gcv.cpp
99+ src/vm/interp/vm_rv32gcv.cpp
100+ src/vm/interp/vm_rv64gcv.cpp
101+ )
102+ endif ()
98103endif ()
99104if (TARGET yaml-cpp::yaml-cpp)
100105 list (APPEND LIB_SOURCES
@@ -128,12 +133,16 @@ if(WITH_ASMJIT)
128133 src/vm/asmjit/vm_rv32i.cpp
129134 src/vm/asmjit/vm_rv32imac.cpp
130135 src/vm/asmjit/vm_rv32gc.cpp
131- src/vm/asmjit/vm_rv32gcv.cpp
132136 src/vm/asmjit/vm_rv64i.cpp
133137 src/vm/asmjit/vm_rv64imac.cpp
134138 src/vm/asmjit/vm_rv64gc.cpp
135- src/vm/asmjit/vm_rv64gcv.cpp
136139 )
140+ if (DBT_RISE_RISCV_ENABLE_VECTOR)
141+ list (APPEND LIB_SOURCES
142+ src/vm/asmjit/vm_rv32gcv.cpp
143+ src/vm/asmjit/vm_rv64gcv.cpp
144+ )
145+ endif ()
137146 endif ()
138147endif ()
139148
@@ -283,10 +292,16 @@ if(TARGET scc-sysc)
283292
284293 set (LIB_SOURCES
285294 src/sysc/core_complex.cpp
286- src/sysc/register_cores.cpp
287- src/sysc/register_rv32gcv.cpp
288- src/sysc/register_rv64gcv.cpp
289295 )
296+ if (NOT NO_GENERIC_CORES)
297+ list (APPEND LIB_SOURCES src/sysc/register_cores.cpp)
298+ if (DBT_RISE_RISCV_ENABLE_VECTOR)
299+ list (APPEND LIB_SOURCES
300+ src/sysc/register_rv32gcv.cpp
301+ src/sysc/register_rv64gcv.cpp
302+ )
303+ endif ()
304+ endif ()
290305
291306 if (IS_DIRECTORY "${PROJECT_SOURCE_DIR } /../dbt-rise-custom" )
292307 FILE (GLOB GEN_SC_SOURCES ${CMAKE_CURRENT_SOURCE_DIR } /../dbt-rise-custom/src/sysc/register_*.cpp )
0 commit comments