pub const CAUSE_INTERRUPT_BIT: u64 = 1 << 63;
pub mod interrupt {
pub const USER_SOFTWARE: u64 = 0x8000_0000_0000_0000;
pub const SUPERVISOR_SOFTWARE: u64 = 0x8000_0000_0000_0001;
pub const MACHINE_SOFTWARE: u64 = 0x8000_0000_0000_0003;
pub const USER_TIMER: u64 = 0x8000_0000_0000_0004;
pub const SUPERVISOR_TIMER: u64 = 0x8000_0000_0000_0005;
pub const MACHINE_TIMER: u64 = 0x8000_0000_0000_0007;
pub const USER_EXTERNAL: u64 = 0x8000_0000_0000_0008;
pub const SUPERVISOR_EXTERNAL: u64 = 0x8000_0000_0000_0009;
pub const MACHINE_EXTERNAL: u64 = 0x8000_0000_0000_000B;
}
pub mod exception {
pub const INSTRUCTION_ADDRESS_MISALIGNED: u64 = 0;
pub const INSTRUCTION_ACCESS_FAULT: u64 = 1;
pub const ILLEGAL_INSTRUCTION: u64 = 2;
pub const BREAKPOINT: u64 = 3;
pub const LOAD_ADDRESS_MISALIGNED: u64 = 4;
pub const LOAD_ACCESS_FAULT: u64 = 5;
pub const STORE_ADDRESS_MISALIGNED: u64 = 6;
pub const STORE_ACCESS_FAULT: u64 = 7;
pub const ENVIRONMENT_CALL_FROM_U_MODE: u64 = 8;
pub const ENVIRONMENT_CALL_FROM_S_MODE: u64 = 9;
pub const ENVIRONMENT_CALL_FROM_M_MODE: u64 = 11;
pub const INSTRUCTION_PAGE_FAULT: u64 = 12;
pub const LOAD_PAGE_FAULT: u64 = 13;
pub const STORE_PAGE_FAULT: u64 = 15;
pub const HARDWARE_ERROR: u64 = 18;
}