All tests pass on spike32 and spike64 again.
# define LREG ld
# define SREG sd
# define REGBYTES 8
# define LREG ld
# define SREG sd
# define REGBYTES 8
# update mstatus
csrr t1, CSR_MSTATUS
# update mstatus
csrr t1, CSR_MSTATUS
li t0, (MSTATUS_MPRV | (VM_SV32 << 24))
#else
li t0, (MSTATUS_MPRV | (VM_SV39 << 24))
li t0, (MSTATUS_MPRV | (VM_SV32 << 24))
#else
li t0, (MSTATUS_MPRV | (VM_SV39 << 24))
.balign 0x1000
page_table:
.balign 0x1000
page_table:
.word ((0x80000000 >> 2) | PTE_V | PTE_R | PTE_W | PTE_X | PTE_G | PTE_U)
#else
.word ((0x80000000 >> 2) | PTE_V | PTE_R | PTE_W | PTE_X | PTE_G | PTE_U)
.word ((0x80000000 >> 2) | PTE_V | PTE_R | PTE_W | PTE_X | PTE_G | PTE_U)
#else
.word ((0x80000000 >> 2) | PTE_V | PTE_R | PTE_W | PTE_X | PTE_G | PTE_U)
#include "../../env/encoding.h"
#include "../../env/encoding.h"
# define LREG ld
# define SREG sd
# define REGBYTES 8
# define LREG ld
# define SREG sd
# define REGBYTES 8