23uint32_t cmrx_riscv_csr_read_mstatus(
void);
24void cmrx_riscv_csr_write_mstatus(uint32_t value);
26uint32_t cmrx_riscv_csr_read_mepc(
void);
27void cmrx_riscv_csr_write_mepc(uint32_t value);
29uint32_t cmrx_riscv_csr_read_mcause(
void);
30void cmrx_riscv_csr_write_mcause(uint32_t value);
32uint32_t cmrx_riscv_csr_read_mtvec(
void);
33void cmrx_riscv_csr_write_mtvec(uint32_t value);
35uint32_t cmrx_riscv_csr_read_mie(
void);
36void cmrx_riscv_csr_write_mie(uint32_t value);
38uint32_t cmrx_riscv_csr_read_mip(
void);
39void cmrx_riscv_csr_write_mip(uint32_t value);
43void cmrx_riscv_irq_disable(
void);
44void cmrx_riscv_irq_enable(
void);
45bool cmrx_riscv_irq_is_enabled(
void);
49static inline void cmrx_riscv_compiler_barrier(
void)
51 __asm__
volatile(
"" :::
"memory");