WIP on priv spec v1.9
[riscv-tests.git] / isa / rv64mi / dirty.S
index 2be4921000a51578ac19fbcd584e7f691534bd55..731d80dc08559fc1e612e524d151fdc99ffefcb3 100644 (file)
@@ -15,9 +15,10 @@ RVTEST_CODE_BEGIN
 
   # Turn on VM with superpage identity mapping
   la a1, page_table_1
+  srl a1, a1, RISCV_PGSHIFT
   csrw sptbr, a1
   sfence.vm
-  li a1, ((MSTATUS_VM & ~(MSTATUS_VM<<1)) * VM_SV39) | ((MSTATUS_PRV1 & ~(MSTATUS_PRV1<<1)) * PRV_S)
+  li a1, ((MSTATUS_VM & ~(MSTATUS_VM<<1)) * VM_SV39) | ((MSTATUS_MPP & ~(MSTATUS_MPP<<1)) * PRV_S)
   csrs mstatus, a1
   la a1, 1f
   csrw mepc, a1
@@ -32,6 +33,7 @@ RVTEST_CODE_BEGIN
   # Load new page table
   li TESTNUM, 3
   la t0, page_table_2
+  srl t0, t0, RISCV_PGSHIFT
   csrw sptbr, t0
   sfence.vm