@@ -48,6 +48,7 @@ pub(crate) fn detect_features() -> cache::Initializer {
48
48
let aes = _sysctlbyname ( c"hw.optional.arm.FEAT_AES" ) ;
49
49
let bf16 = _sysctlbyname ( c"hw.optional.arm.FEAT_BF16" ) ;
50
50
let bti = _sysctlbyname ( c"hw.optional.arm.FEAT_BTI" ) ;
51
+ let cssc = _sysctlbyname ( c"hw.optional.arm.FEAT_CSSC" ) ;
51
52
let dit = _sysctlbyname ( c"hw.optional.arm.FEAT_DIT" ) ;
52
53
let dpb = _sysctlbyname ( c"hw.optional.arm.FEAT_DPB" ) ;
53
54
let dpb2 = _sysctlbyname ( c"hw.optional.arm.FEAT_DPB2" ) ;
@@ -59,6 +60,7 @@ pub(crate) fn detect_features() -> cache::Initializer {
59
60
let frintts = _sysctlbyname ( c"hw.optional.arm.FEAT_FRINTTS" ) ;
60
61
let flagm = _sysctlbyname ( c"hw.optional.arm.FEAT_FlagM" ) ;
61
62
let flagm2 = _sysctlbyname ( c"hw.optional.arm.FEAT_FlagM2" ) ;
63
+ let hbc = _sysctlbyname ( c"hw.optional.arm.FEAT_HBC" ) ;
62
64
let i8mm = _sysctlbyname ( c"hw.optional.arm.FEAT_I8MM" ) ;
63
65
let jsconv = _sysctlbyname ( c"hw.optional.arm.FEAT_JSCVT" ) ;
64
66
let rcpc = _sysctlbyname ( c"hw.optional.arm.FEAT_LRCPC" ) ;
@@ -87,10 +89,14 @@ pub(crate) fn detect_features() -> cache::Initializer {
87
89
let afp = _sysctlbyname(c"hw.optional.arm.FEAT_AFP");
88
90
let csv2 = _sysctlbyname(c"hw.optional.arm.FEAT_CSV2");
89
91
let csv3 = _sysctlbyname(c"hw.optional.arm.FEAT_CSV3");
92
+ let ebf16 = _sysctlbyname(c"hw.optional.arm.FEAT_EBF16");
90
93
let fpac = _sysctlbyname(c"hw.optional.arm.FEAT_FPAC");
94
+ let fpaccombine = _sysctlbyname(c"hw.optional.arm.FEAT_FPACCOMBINE");
95
+ let pacimp = _sysctlbyname(c"hw.optional.arm.FEAT_PACIMP");
91
96
let pauth2 = _sysctlbyname(c"hw.optional.arm.FEAT_PAuth2");
92
97
let rpres = _sysctlbyname(c"hw.optional.arm.FEAT_RPRES");
93
98
let specres = _sysctlbyname(c"hw.optional.arm.FEAT_SPECRES");
99
+ let specres2 = _sysctlbyname(c"hw.optional.arm.FEAT_SPECRES2");
94
100
*/
95
101
96
102
// The following "features" are reported by `sysctl` but are mandatory parts
@@ -111,6 +117,7 @@ pub(crate) fn detect_features() -> cache::Initializer {
111
117
enable_feature ( Feature :: bf16, bf16) ;
112
118
enable_feature ( Feature :: bti, bti) ;
113
119
enable_feature ( Feature :: crc, crc) ;
120
+ enable_feature ( Feature :: cssc, cssc) ;
114
121
enable_feature ( Feature :: dit, dit) ;
115
122
enable_feature ( Feature :: dotprod, dotprod) ;
116
123
enable_feature ( Feature :: dpb, dpb) ;
@@ -123,6 +130,7 @@ pub(crate) fn detect_features() -> cache::Initializer {
123
130
enable_feature ( Feature :: fp, fp) ;
124
131
enable_feature ( Feature :: fp16, fp16) ;
125
132
enable_feature ( Feature :: frintts, frintts) ;
133
+ enable_feature ( Feature :: hbc, hbc) ;
126
134
enable_feature ( Feature :: i8mm, i8mm) ;
127
135
enable_feature ( Feature :: jsconv, jsconv) ;
128
136
enable_feature ( Feature :: lse, lse) ;
0 commit comments