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
 )