use bitfld::{bitfield_repr, layout};
#[bitfield_repr(u8)]
pub enum Xlen {
_32 = 1,
_64 = 2,
_128 = 3,
}
#[bitfield_repr(u8)]
pub enum SstatusExtState {
Off = 0, Initial = 1, Clean = 2, Dirty = 3, }
layout!({
pub struct Sstatus(u64);
{
let sd: Bit<63>; let _: Bits<62, 34>;
let uxl: Bits<33, 32, Xlen>; let _: Bits<31, 20>;
let mxr: Bit<19>; let sum: Bit<18>; let _: Bit<17>;
let xs: Bits<16, 15, SstatusExtState>; let fs: Bits<14, 13, SstatusExtState>; let _: Bits<12, 11>;
let vs: Bits<10, 9, SstatusExtState>; let spp: Bit<8>; let _: Bit<7>;
let ube: Bit<6>; let spie: Bit<5>; let _: Bits<4, 3>;
let sie: Bit<1>; let _: Bit<0>;
}
});