sw:vec_iree: Set DTCM size to a fixed 16MB for all executables
The return code and MEPC can be recorded to a fixed location and be read
by MLCoordinator.
Change-Id: Iffdc9ae7293d85a9952872b6dc7b4a260b16ccf4
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 98b7f64..201fcab 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -24,7 +24,7 @@
#-------------------------------------------------------------------------------
# Springbok-specific settings
#-------------------------------------------------------------------------------
-set(DTCM_LENGTH "4M" CACHE STRING "DTCM Length (default: 4M)")
+set(DTCM_LENGTH "16M" CACHE STRING "DTCM Length (default: 16M)")
add_link_options("LINKER:--defsym=__dtcm_length__=${DTCM_LENGTH}")
set(ITCM_LENGTH "256K" CACHE STRING "ITCM (I-mem) Length (default: 256K)")
add_link_options("LINKER:--defsym=__itcm_length__=${ITCM_LENGTH}")
diff --git a/samples/float_model_embedding/CMakeLists.txt b/samples/float_model_embedding/CMakeLists.txt
index 109ef8a..4cc4955 100644
--- a/samples/float_model_embedding/CMakeLists.txt
+++ b/samples/float_model_embedding/CMakeLists.txt
@@ -167,7 +167,6 @@
::mobilenet_v1_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
@@ -220,7 +219,6 @@
::daredevil_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
@@ -233,7 +231,6 @@
::fssd_25_8bit_v2_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
@@ -258,7 +255,6 @@
::semantic_lift_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
@@ -271,6 +267,5 @@
::voice_commands_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
diff --git a/samples/quant_model_embedding/CMakeLists.txt b/samples/quant_model_embedding/CMakeLists.txt
index 91715ae..052c889 100644
--- a/samples/quant_model_embedding/CMakeLists.txt
+++ b/samples/quant_model_embedding/CMakeLists.txt
@@ -221,7 +221,6 @@
::barcode_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
@@ -246,7 +245,6 @@
::fssd_25_8bit_v2_bytecode_module_dylib_c
samples::util::util
LINKOPTS
- "LINKER:--defsym=__dtcm_length__=16M"
"LINKER:--defsym=__stack_size__=100k"
)
diff --git a/samples/simple_vec_mul/CMakeLists.txt b/samples/simple_vec_mul/CMakeLists.txt
index 75c18c5..32ef4bd 100644
--- a/samples/simple_vec_mul/CMakeLists.txt
+++ b/samples/simple_vec_mul/CMakeLists.txt
@@ -1,7 +1,7 @@
#-------------------------------------------------------------------------------
-# Build the mlir bytecode modules with iree-translate. Note the last two flags
+# Build the mlir bytecode modules with iree-translate. Note the last three flags
# are for RVV support.
-# https://github.com/llvm/llvm-project/blob/f4ec30d/llvm/lib/Target/RISCV/RISCVSubtarget.cpp#L30-L46
+# https://github.com/llvm/llvm-project/blob/0eeab8b/llvm/lib/Target/RISCV/RISCVSubtarget.cpp#L30-L51
#-------------------------------------------------------------------------------
springbok_bytecode_module(
@@ -15,6 +15,7 @@
"-iree-input-type=mhlo"
"-riscv-v-vector-bits-min=512"
"-riscv-v-fixed-length-vector-lmul-max=8"
+ "-riscv-v-fixed-length-vector-elen-max=32"
PUBLIC
)
@@ -29,6 +30,7 @@
"-iree-input-type=mhlo"
"-riscv-v-vector-bits-min=512"
"-riscv-v-fixed-length-vector-lmul-max=8"
+ "-riscv-v-fixed-length-vector-elen-max=32"
PUBLIC
)