linux_syscalls/env/aux/
powerpc.rs1use super::{aux_t, AuxValue, Sealed};
2
3crate::bitflags! {
4 #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
5 pub enum Features: usize {
6 B32 = 0x80000000,
8 B64 = 0x40000000,
10 C601_INSTR = 0x20000000,
12 HAS_ALTIVEC = 0x10000000,
14 HAS_FPU = 0x08000000,
16 HAS_MMU = 0x04000000,
18 #[allow(non_upper_case_globals)]
19 HAS_4xxMAC = 0x02000000,
21 UNIFIED_CACHE = 0x01000000,
23 HAS_SPE = 0x00800000,
25 HAS_EFP_SINGLE = 0x00400000,
27 HAS_EFP_DOUBLE = 0x00200000,
29 NO_TB = 0x00100000,
31 POWER4 = 0x00080000,
33 POWER5 = 0x00040000,
35 POWER5_PLUS = 0x00020000,
37 CELL_BE = 0x00010000,
39 BOOKE = 0x00008000,
41 SMT = 0x00004000,
43 ICACHE_SNOOP = 0x00002000,
44 ARCH_2_05 = 0x00001000,
46 PA6T = 0x00000800,
48 HAS_DFP = 0x00000400,
50 POWER6_EXT = 0x00000200,
52 ARCH_2_06 = 0x00000100,
54 HAS_VSX = 0x00000080,
56 PSERIES_PERFMON_COMPAT = 0x00000040,
57 TRUE_LE = 0x00000002,
58 PPC_LE = 0x00000001,
59 }
60
61 impl Sealed for Features {}
62 impl AuxValue for Features {
63 fn from(value: aux_t) -> Self {
64 (value as usize).into()
65 }
66 }
67}
68
69crate::bitflags! {
70 #[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
71 pub enum Features2: usize {
72 ARCH_2_07 = 0x80000000,
74 HAS_HTM = 0x40000000,
76 HAS_DSCR = 0x20000000,
78 HAS_EBB = 0x10000000,
80 HAS_ISEL = 0x08000000,
82 HAS_TAR = 0x04000000,
84 HAS_VEC_CRYPTO = 0x02000000,
86 HTM_NOSC = 0x01000000,
88 ARCH_3_00 = 0x00800000,
90 HAS_IEEE128 = 0x00400000,
92 DARN = 0x00200000,
94 SCV = 0x00100000,
96 HTM_NO_SUSPEND = 0x00080000,
98 ARCH_3_1 = 0x00040000,
100 MMA = 0x00020000,
102 }
103
104 impl Sealed for Features2 {}
105 impl AuxValue for Features2 {
106 fn from(value: aux_t) -> Self {
107 (value as usize).into()
108 }
109 }
110}