#![allow(non_camel_case_types)] // For Unicorn Engine. AUTO-GENERATED FILE, DO NOT EDIT // RISCV registers #[repr(C)] #[derive(PartialEq, Debug, Clone, Copy)] pub enum RegisterRISCV { INVALID = 0, // General purpose registers X0 = 1, X1 = 2, X2 = 3, X3 = 4, X4 = 5, X5 = 6, X6 = 7, X7 = 8, X8 = 9, X9 = 10, X10 = 11, X11 = 12, X12 = 13, X13 = 14, X14 = 15, X15 = 16, X16 = 17, X17 = 18, X18 = 19, X19 = 20, X20 = 21, X21 = 22, X22 = 23, X23 = 24, X24 = 25, X25 = 26, X26 = 27, X27 = 28, X28 = 29, X29 = 30, X30 = 31, X31 = 32, // CSR USTATUS = 33, UIE = 34, UTVEC = 35, USCRATCH = 36, UEPC = 37, UCAUSE = 38, UTVAL = 39, UIP = 40, FFLAGS = 41, FRM = 42, FCSR = 43, CYCLE = 44, TIME = 45, INSTRET = 46, HPMCOUNTER3 = 47, HPMCOUNTER4 = 48, HPMCOUNTER5 = 49, HPMCOUNTER6 = 50, HPMCOUNTER7 = 51, HPMCOUNTER8 = 52, HPMCOUNTER9 = 53, HPMCOUNTER10 = 54, HPMCOUNTER11 = 55, HPMCOUNTER12 = 56, HPMCOUNTER13 = 57, HPMCOUNTER14 = 58, HPMCOUNTER15 = 59, HPMCOUNTER16 = 60, HPMCOUNTER17 = 61, HPMCOUNTER18 = 62, HPMCOUNTER19 = 63, HPMCOUNTER20 = 64, HPMCOUNTER21 = 65, HPMCOUNTER22 = 66, HPMCOUNTER23 = 67, HPMCOUNTER24 = 68, HPMCOUNTER25 = 69, HPMCOUNTER26 = 70, HPMCOUNTER27 = 71, HPMCOUNTER28 = 72, HPMCOUNTER29 = 73, HPMCOUNTER30 = 74, HPMCOUNTER31 = 75, CYCLEH = 76, TIMEH = 77, INSTRETH = 78, HPMCOUNTER3H = 79, HPMCOUNTER4H = 80, HPMCOUNTER5H = 81, HPMCOUNTER6H = 82, HPMCOUNTER7H = 83, HPMCOUNTER8H = 84, HPMCOUNTER9H = 85, HPMCOUNTER10H = 86, HPMCOUNTER11H = 87, HPMCOUNTER12H = 88, HPMCOUNTER13H = 89, HPMCOUNTER14H = 90, HPMCOUNTER15H = 91, HPMCOUNTER16H = 92, HPMCOUNTER17H = 93, HPMCOUNTER18H = 94, HPMCOUNTER19H = 95, HPMCOUNTER20H = 96, HPMCOUNTER21H = 97, HPMCOUNTER22H = 98, HPMCOUNTER23H = 99, HPMCOUNTER24H = 100, HPMCOUNTER25H = 101, HPMCOUNTER26H = 102, HPMCOUNTER27H = 103, HPMCOUNTER28H = 104, HPMCOUNTER29H = 105, HPMCOUNTER30H = 106, HPMCOUNTER31H = 107, MCYCLE = 108, MINSTRET = 109, MCYCLEH = 110, MINSTRETH = 111, MVENDORID = 112, MARCHID = 113, MIMPID = 114, MHARTID = 115, MSTATUS = 116, MISA = 117, MEDELEG = 118, MIDELEG = 119, MIE = 120, MTVEC = 121, MCOUNTEREN = 122, MSTATUSH = 123, MUCOUNTEREN = 124, MSCOUNTEREN = 125, MHCOUNTEREN = 126, MSCRATCH = 127, MEPC = 128, MCAUSE = 129, MTVAL = 130, MIP = 131, MBADADDR = 132, SSTATUS = 133, SEDELEG = 134, SIDELEG = 135, SIE = 136, STVEC = 137, SCOUNTEREN = 138, SSCRATCH = 139, SEPC = 140, SCAUSE = 141, STVAL = 142, SIP = 143, SBADADDR = 144, SPTBR = 145, SATP = 146, HSTATUS = 147, HEDELEG = 148, HIDELEG = 149, HIE = 150, HCOUNTEREN = 151, HTVAL = 152, HIP = 153, HTINST = 154, HGATP = 155, HTIMEDELTA = 156, HTIMEDELTAH = 157, // Floating-point registers F0 = 158, F1 = 159, F2 = 160, F3 = 161, F4 = 162, F5 = 163, F6 = 164, F7 = 165, F8 = 166, F9 = 167, F10 = 168, F11 = 169, F12 = 170, F13 = 171, F14 = 172, F15 = 173, F16 = 174, F17 = 175, F18 = 176, F19 = 177, F20 = 178, F21 = 179, F22 = 180, F23 = 181, F24 = 182, F25 = 183, F26 = 184, F27 = 185, F28 = 186, F29 = 187, F30 = 188, F31 = 189, PC = 190, ENDING = 191, } impl RegisterRISCV { // Alias registers // (assoc) ZERO = 1, // (assoc) RA = 2, // (assoc) SP = 3, // (assoc) GP = 4, // (assoc) TP = 5, // (assoc) T0 = 6, // (assoc) T1 = 7, // (assoc) T2 = 8, // (assoc) S0 = 9, // (assoc) FP = 9, // (assoc) S1 = 10, // (assoc) A0 = 11, // (assoc) A1 = 12, // (assoc) A2 = 13, // (assoc) A3 = 14, // (assoc) A4 = 15, // (assoc) A5 = 16, // (assoc) A6 = 17, // (assoc) A7 = 18, // (assoc) S2 = 19, // (assoc) S3 = 20, // (assoc) S4 = 21, // (assoc) S5 = 22, // (assoc) S6 = 23, // (assoc) S7 = 24, // (assoc) S8 = 25, // (assoc) S9 = 26, // (assoc) S10 = 27, // (assoc) S11 = 28, // (assoc) T3 = 29, // (assoc) T4 = 30, // (assoc) T5 = 31, // (assoc) T6 = 32, // (assoc) FT0 = 33, // (assoc) FT1 = 34, // (assoc) FT2 = 35, // (assoc) FT3 = 36, // (assoc) FT4 = 37, // (assoc) FT5 = 38, // (assoc) FT6 = 39, // (assoc) FT7 = 40, // (assoc) FS0 = 41, // (assoc) FS1 = 42, // (assoc) FA0 = 43, // (assoc) FA1 = 44, // (assoc) FA2 = 45, // (assoc) FA3 = 46, // (assoc) FA4 = 47, // (assoc) FA5 = 48, // (assoc) FA6 = 49, // (assoc) FA7 = 50, // (assoc) FS2 = 51, // (assoc) FS3 = 52, // (assoc) FS4 = 53, // (assoc) FS5 = 54, // (assoc) FS6 = 55, // (assoc) FS7 = 56, // (assoc) FS8 = 57, // (assoc) FS9 = 58, // (assoc) FS10 = 59, // (assoc) FS11 = 60, // (assoc) FT8 = 61, // (assoc) FT9 = 62, // (assoc) FT10 = 63, // (assoc) FT11 = 64, pub const ZERO: RegisterRISCV = RegisterRISCV::X0; pub const RA: RegisterRISCV = RegisterRISCV::X1; pub const SP: RegisterRISCV = RegisterRISCV::X2; pub const GP: RegisterRISCV = RegisterRISCV::X3; pub const TP: RegisterRISCV = RegisterRISCV::X4; pub const T0: RegisterRISCV = RegisterRISCV::X5; pub const T1: RegisterRISCV = RegisterRISCV::X6; pub const T2: RegisterRISCV = RegisterRISCV::X7; pub const S0: RegisterRISCV = RegisterRISCV::X8; pub const FP: RegisterRISCV = RegisterRISCV::X8; pub const S1: RegisterRISCV = RegisterRISCV::X9; pub const A0: RegisterRISCV = RegisterRISCV::X10; pub const A1: RegisterRISCV = RegisterRISCV::X11; pub const A2: RegisterRISCV = RegisterRISCV::X12; pub const A3: RegisterRISCV = RegisterRISCV::X13; pub const A4: RegisterRISCV = RegisterRISCV::X14; pub const A5: RegisterRISCV = RegisterRISCV::X15; pub const A6: RegisterRISCV = RegisterRISCV::X16; pub const A7: RegisterRISCV = RegisterRISCV::X17; pub const S2: RegisterRISCV = RegisterRISCV::X18; pub const S3: RegisterRISCV = RegisterRISCV::X19; pub const S4: RegisterRISCV = RegisterRISCV::X20; pub const S5: RegisterRISCV = RegisterRISCV::X21; pub const S6: RegisterRISCV = RegisterRISCV::X22; pub const S7: RegisterRISCV = RegisterRISCV::X23; pub const S8: RegisterRISCV = RegisterRISCV::X24; pub const S9: RegisterRISCV = RegisterRISCV::X25; pub const S10: RegisterRISCV = RegisterRISCV::X26; pub const S11: RegisterRISCV = RegisterRISCV::X27; pub const T3: RegisterRISCV = RegisterRISCV::X28; pub const T4: RegisterRISCV = RegisterRISCV::X29; pub const T5: RegisterRISCV = RegisterRISCV::X30; pub const T6: RegisterRISCV = RegisterRISCV::X31; pub const FT0: RegisterRISCV = RegisterRISCV::F0; pub const FT1: RegisterRISCV = RegisterRISCV::F1; pub const FT2: RegisterRISCV = RegisterRISCV::F2; pub const FT3: RegisterRISCV = RegisterRISCV::F3; pub const FT4: RegisterRISCV = RegisterRISCV::F4; pub const FT5: RegisterRISCV = RegisterRISCV::F5; pub const FT6: RegisterRISCV = RegisterRISCV::F6; pub const FT7: RegisterRISCV = RegisterRISCV::F7; pub const FS0: RegisterRISCV = RegisterRISCV::F8; pub const FS1: RegisterRISCV = RegisterRISCV::F9; pub const FA0: RegisterRISCV = RegisterRISCV::F10; pub const FA1: RegisterRISCV = RegisterRISCV::F11; pub const FA2: RegisterRISCV = RegisterRISCV::F12; pub const FA3: RegisterRISCV = RegisterRISCV::F13; pub const FA4: RegisterRISCV = RegisterRISCV::F14; pub const FA5: RegisterRISCV = RegisterRISCV::F15; pub const FA6: RegisterRISCV = RegisterRISCV::F16; pub const FA7: RegisterRISCV = RegisterRISCV::F17; pub const FS2: RegisterRISCV = RegisterRISCV::F18; pub const FS3: RegisterRISCV = RegisterRISCV::F19; pub const FS4: RegisterRISCV = RegisterRISCV::F20; pub const FS5: RegisterRISCV = RegisterRISCV::F21; pub const FS6: RegisterRISCV = RegisterRISCV::F22; pub const FS7: RegisterRISCV = RegisterRISCV::F23; pub const FS8: RegisterRISCV = RegisterRISCV::F24; pub const FS9: RegisterRISCV = RegisterRISCV::F25; pub const FS10: RegisterRISCV = RegisterRISCV::F26; pub const FS11: RegisterRISCV = RegisterRISCV::F27; pub const FT8: RegisterRISCV = RegisterRISCV::F28; pub const FT9: RegisterRISCV = RegisterRISCV::F29; pub const FT10: RegisterRISCV = RegisterRISCV::F30; pub const FT11: RegisterRISCV = RegisterRISCV::F31; } impl From for i32 { fn from(r: RegisterRISCV) -> Self { r as i32 } }