diff --git a/libgloss/riscv/crt0.S b/libgloss/riscv/crt0.S
index 7a4e4e32c..4744ba039 100644
--- a/libgloss/riscv/crt0.S
+++ b/libgloss/riscv/crt0.S
@@ -26,6 +26,16 @@ _start:
   addi  gp, gp, %pcrel_lo(1b)
 .option pop
 
+  /* Initialize jvt CSR */
+  .weak __jvt_base$
+.option push
+.option arch, +zcmt, +zicsr
+  lla a0, __jvt_base$
+  beqz a0, .Ljvt_init_end
+  csrw jvt, a0
+.Ljvt_init_end:
+.option pop
+
   # Clear the bss segment
   la      a0, __bss_start
   la      a2, _end
