Skip to content

Commit 6b9082f

Browse files
coastalwhiteAmanieu
authored andcommitted
Fix: Remove assert_instr for RISCV, see #1464
1 parent 6c5ff3b commit 6b9082f

File tree

3 files changed

+60
-30
lines changed

3 files changed

+60
-30
lines changed

crates/core_arch/src/riscv32/zk.rs

+20-10
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@ extern "unadjusted" {
6262
/// This function is safe to use if the `zkne` target feature is present.
6363
#[target_feature(enable = "zkne")]
6464
#[rustc_legacy_const_generics(2)]
65-
#[cfg_attr(test, assert_instr(aes32esi, BS = 0))]
65+
// See #1464
66+
// #[cfg_attr(test, assert_instr(aes32esi, BS = 0))]
6667
#[inline]
6768
pub unsafe fn aes32esi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
6869
static_assert!(BS < 4);
@@ -93,7 +94,8 @@ pub unsafe fn aes32esi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
9394
/// This function is safe to use if the `zkne` target feature is present.
9495
#[target_feature(enable = "zkne")]
9596
#[rustc_legacy_const_generics(2)]
96-
#[cfg_attr(test, assert_instr(aes32esmi, BS = 0))]
97+
// See #1464
98+
// #[cfg_attr(test, assert_instr(aes32esmi, BS = 0))]
9799
#[inline]
98100
pub unsafe fn aes32esmi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
99101
static_assert!(BS < 4);
@@ -123,7 +125,8 @@ pub unsafe fn aes32esmi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
123125
/// This function is safe to use if the `zknd` target feature is present.
124126
#[target_feature(enable = "zknd")]
125127
#[rustc_legacy_const_generics(2)]
126-
#[cfg_attr(test, assert_instr(aes32dsi, BS = 0))]
128+
// See #1464
129+
// #[cfg_attr(test, assert_instr(aes32dsi, BS = 0))]
127130
#[inline]
128131
pub unsafe fn aes32dsi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
129132
static_assert!(BS < 4);
@@ -154,7 +157,8 @@ pub unsafe fn aes32dsi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
154157
/// This function is safe to use if the `zknd` target feature is present.
155158
#[target_feature(enable = "zknd")]
156159
#[rustc_legacy_const_generics(2)]
157-
#[cfg_attr(test, assert_instr(aes32dsmi, BS = 0))]
160+
// See #1464
161+
// #[cfg_attr(test, assert_instr(aes32dsmi, BS = 0))]
158162
#[inline]
159163
pub unsafe fn aes32dsmi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
160164
static_assert!(BS < 4);
@@ -180,7 +184,8 @@ pub unsafe fn aes32dsmi<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
180184
///
181185
/// This function is safe to use if the `zbkb` target feature is present.
182186
#[target_feature(enable = "zbkb")]
183-
#[cfg_attr(test, assert_instr(zip))]
187+
// See #1464
188+
// #[cfg_attr(test, assert_instr(zip))]
184189
#[inline]
185190
pub unsafe fn zip(rs: u32) -> u32 {
186191
_zip(rs as i32) as u32
@@ -227,7 +232,8 @@ pub unsafe fn unzip(rs: u32) -> u32 {
227232
///
228233
/// This function is safe to use if the `zknh` target feature is present.
229234
#[target_feature(enable = "zknh")]
230-
#[cfg_attr(test, assert_instr(sha512sig0h))]
235+
// See #1464
236+
// #[cfg_attr(test, assert_instr(sha512sig0h))]
231237
#[inline]
232238
pub unsafe fn sha512sig0h(rs1: u32, rs2: u32) -> u32 {
233239
_sha512sig0h(rs1 as i32, rs2 as i32) as u32
@@ -252,7 +258,8 @@ pub unsafe fn sha512sig0h(rs1: u32, rs2: u32) -> u32 {
252258
///
253259
/// This function is safe to use if the `zknh` target feature is present.
254260
#[target_feature(enable = "zknh")]
255-
#[cfg_attr(test, assert_instr(sha512sig0l))]
261+
// See #1464
262+
// #[cfg_attr(test, assert_instr(sha512sig0l))]
256263
#[inline]
257264
pub unsafe fn sha512sig0l(rs1: u32, rs2: u32) -> u32 {
258265
_sha512sig0l(rs1 as i32, rs2 as i32) as u32
@@ -277,7 +284,8 @@ pub unsafe fn sha512sig0l(rs1: u32, rs2: u32) -> u32 {
277284
///
278285
/// This function is safe to use if the `zknh` target feature is present.
279286
#[target_feature(enable = "zknh")]
280-
#[cfg_attr(test, assert_instr(sha512sig1h))]
287+
// See #1464
288+
// #[cfg_attr(test, assert_instr(sha512sig1h))]
281289
#[inline]
282290
pub unsafe fn sha512sig1h(rs1: u32, rs2: u32) -> u32 {
283291
_sha512sig1h(rs1 as i32, rs2 as i32) as u32
@@ -326,7 +334,8 @@ pub unsafe fn sha512sig1l(rs1: u32, rs2: u32) -> u32 {
326334
///
327335
/// This function is safe to use if the `zknh` target feature is present.
328336
#[target_feature(enable = "zknh")]
329-
#[cfg_attr(test, assert_instr(sha512sum0r))]
337+
// See #1464
338+
// #[cfg_attr(test, assert_instr(sha512sum0r))]
330339
#[inline]
331340
pub unsafe fn sha512sum0r(rs1: u32, rs2: u32) -> u32 {
332341
_sha512sum0r(rs1 as i32, rs2 as i32) as u32
@@ -350,7 +359,8 @@ pub unsafe fn sha512sum0r(rs1: u32, rs2: u32) -> u32 {
350359
///
351360
/// This function is safe to use if the `zknh` target feature is present.
352361
#[target_feature(enable = "zknh")]
353-
#[cfg_attr(test, assert_instr(sha512sum1r))]
362+
// See #1464
363+
// #[cfg_attr(test, assert_instr(sha512sum1r))]
354364
#[inline]
355365
pub unsafe fn sha512sum1r(rs1: u32, rs2: u32) -> u32 {
356366
_sha512sum1r(rs1 as i32, rs2 as i32) as u32

crates/core_arch/src/riscv64/zk.rs

+20-10
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,8 @@ extern "unadjusted" {
5050
///
5151
/// This function is safe to use if the `zkne` target feature is present.
5252
#[target_feature(enable = "zkne")]
53-
#[cfg_attr(test, assert_instr(aes64es))]
53+
// See #1464
54+
// #[cfg_attr(test, assert_instr(aes64es))]
5455
#[inline]
5556
pub unsafe fn aes64es(rs1: u64, rs2: u64) -> u64 {
5657
_aes64es(rs1 as i64, rs2 as i64) as u64
@@ -73,7 +74,8 @@ pub unsafe fn aes64es(rs1: u64, rs2: u64) -> u64 {
7374
///
7475
/// This function is safe to use if the `zkne` target feature is present.
7576
#[target_feature(enable = "zkne")]
76-
#[cfg_attr(test, assert_instr(aes64esm))]
77+
// See #1464
78+
// #[cfg_attr(test, assert_instr(aes64esm))]
7779
#[inline]
7880
pub unsafe fn aes64esm(rs1: u64, rs2: u64) -> u64 {
7981
_aes64esm(rs1 as i64, rs2 as i64) as u64
@@ -96,7 +98,8 @@ pub unsafe fn aes64esm(rs1: u64, rs2: u64) -> u64 {
9698
///
9799
/// This function is safe to use if the `zknd` target feature is present.
98100
#[target_feature(enable = "zknd")]
99-
#[cfg_attr(test, assert_instr(aes64ds))]
101+
// See #1464
102+
// #[cfg_attr(test, assert_instr(aes64ds))]
100103
#[inline]
101104
pub unsafe fn aes64ds(rs1: u64, rs2: u64) -> u64 {
102105
_aes64ds(rs1 as i64, rs2 as i64) as u64
@@ -119,7 +122,8 @@ pub unsafe fn aes64ds(rs1: u64, rs2: u64) -> u64 {
119122
///
120123
/// This function is safe to use if the `zknd` target feature is present.
121124
#[target_feature(enable = "zknd")]
122-
#[cfg_attr(test, assert_instr(aes64dsm))]
125+
// See #1464
126+
// #[cfg_attr(test, assert_instr(aes64dsm))]
123127
#[inline]
124128
pub unsafe fn aes64dsm(rs1: u64, rs2: u64) -> u64 {
125129
_aes64dsm(rs1 as i64, rs2 as i64) as u64
@@ -148,7 +152,8 @@ pub unsafe fn aes64dsm(rs1: u64, rs2: u64) -> u64 {
148152
/// This function is safe to use if the `zkne` or `zknd` target feature is present.
149153
#[target_feature(enable = "zkne", enable = "zknd")]
150154
#[rustc_legacy_const_generics(1)]
151-
#[cfg_attr(test, assert_instr(aes64ks1i, RNUM = 0))]
155+
// See #1464
156+
// #[cfg_attr(test, assert_instr(aes64ks1i, RNUM = 0))]
152157
#[inline]
153158
pub unsafe fn aes64ks1i<const RNUM: u8>(rs1: u64) -> u64 {
154159
static_assert!(RNUM <= 10);
@@ -172,7 +177,8 @@ pub unsafe fn aes64ks1i<const RNUM: u8>(rs1: u64) -> u64 {
172177
///
173178
/// This function is safe to use if the `zkne` or `zknd` target feature is present.
174179
#[target_feature(enable = "zkne", enable = "zknd")]
175-
#[cfg_attr(test, assert_instr(aes64ks2))]
180+
// See #1464
181+
// #[cfg_attr(test, assert_instr(aes64ks2))]
176182
#[inline]
177183
pub unsafe fn aes64ks2(rs1: u64, rs2: u64) -> u64 {
178184
_aes64ks2(rs1 as i64, rs2 as i64) as u64
@@ -195,7 +201,8 @@ pub unsafe fn aes64ks2(rs1: u64, rs2: u64) -> u64 {
195201
///
196202
/// This function is safe to use if the `zknh` target feature is present.
197203
#[target_feature(enable = "zknh")]
198-
#[cfg_attr(test, assert_instr(sha512sig0))]
204+
// See #1464
205+
// #[cfg_attr(test, assert_instr(sha512sig0))]
199206
#[inline]
200207
pub unsafe fn sha512sig0(rs1: u64) -> u64 {
201208
_sha512sig0(rs1 as i64) as u64
@@ -218,7 +225,8 @@ pub unsafe fn sha512sig0(rs1: u64) -> u64 {
218225
///
219226
/// This function is safe to use if the `zknh` target feature is present.
220227
#[target_feature(enable = "zknh")]
221-
#[cfg_attr(test, assert_instr(sha512sig1))]
228+
// See #1464
229+
// #[cfg_attr(test, assert_instr(sha512sig1))]
222230
#[inline]
223231
pub unsafe fn sha512sig1(rs1: u64) -> u64 {
224232
_sha512sig1(rs1 as i64) as u64
@@ -241,7 +249,8 @@ pub unsafe fn sha512sig1(rs1: u64) -> u64 {
241249
///
242250
/// This function is safe to use if the `zknh` target feature is present.
243251
#[target_feature(enable = "zknh")]
244-
#[cfg_attr(test, assert_instr(sha512sum0))]
252+
// See #1464
253+
// #[cfg_attr(test, assert_instr(sha512sum0))]
245254
#[inline]
246255
pub unsafe fn sha512sum0(rs1: u64) -> u64 {
247256
_sha512sum0(rs1 as i64) as u64
@@ -264,7 +273,8 @@ pub unsafe fn sha512sum0(rs1: u64) -> u64 {
264273
///
265274
/// This function is safe to use if the `zknh` target feature is present.
266275
#[target_feature(enable = "zknh")]
267-
#[cfg_attr(test, assert_instr(sha512sum1))]
276+
// See #1464
277+
// #[cfg_attr(test, assert_instr(sha512sum1))]
268278
#[inline]
269279
pub unsafe fn sha512sum1(rs1: u64) -> u64 {
270280
_sha512sum1(rs1 as i64) as u64

crates/core_arch/src/riscv_shared/zk.rs

+20-10
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,8 @@ extern "unadjusted" {
6262
///
6363
/// This function is safe to use if the `zbkx` target feature is present.
6464
#[target_feature(enable = "zbkx")]
65-
#[cfg_attr(test, assert_instr(xperm8))]
65+
// See #1464
66+
// #[cfg_attr(test, assert_instr(xperm8))]
6667
#[inline]
6768
pub unsafe fn xperm8(rs1: usize, rs2: usize) -> usize {
6869
#[cfg(target_arch = "riscv32")]
@@ -93,7 +94,8 @@ pub unsafe fn xperm8(rs1: usize, rs2: usize) -> usize {
9394
///
9495
/// This function is safe to use if the `zbkx` target feature is present.
9596
#[target_feature(enable = "zbkx")]
96-
#[cfg_attr(test, assert_instr(xperm4))]
97+
// See #1464
98+
// #[cfg_attr(test, assert_instr(xperm4))]
9799
#[inline]
98100
pub unsafe fn xperm4(rs1: usize, rs2: usize) -> usize {
99101
#[cfg(target_arch = "riscv32")]
@@ -127,7 +129,8 @@ pub unsafe fn xperm4(rs1: usize, rs2: usize) -> usize {
127129
///
128130
/// This function is safe to use if the `zknh` target feature is present.
129131
#[target_feature(enable = "zknh")]
130-
#[cfg_attr(test, assert_instr(sha256sig0))]
132+
// See #1464
133+
// #[cfg_attr(test, assert_instr(sha256sig0))]
131134
#[inline]
132135
pub unsafe fn sha256sig0(rs1: u32) -> u32 {
133136
_sha256sig0(rs1 as i32) as u32
@@ -153,7 +156,8 @@ pub unsafe fn sha256sig0(rs1: u32) -> u32 {
153156
///
154157
/// This function is safe to use if the `zknh` target feature is present.
155158
#[target_feature(enable = "zknh")]
156-
#[cfg_attr(test, assert_instr(sha256sig1))]
159+
// See #1464
160+
// #[cfg_attr(test, assert_instr(sha256sig1))]
157161
#[inline]
158162
pub unsafe fn sha256sig1(rs1: u32) -> u32 {
159163
_sha256sig1(rs1 as i32) as u32
@@ -179,7 +183,8 @@ pub unsafe fn sha256sig1(rs1: u32) -> u32 {
179183
///
180184
/// This function is safe to use if the `zknh` target feature is present.
181185
#[target_feature(enable = "zknh")]
182-
#[cfg_attr(test, assert_instr(sha256sum0))]
186+
// See #1464
187+
// #[cfg_attr(test, assert_instr(sha256sum0))]
183188
#[inline]
184189
pub unsafe fn sha256sum0(rs1: u32) -> u32 {
185190
_sha256sum0(rs1 as i32) as u32
@@ -205,7 +210,8 @@ pub unsafe fn sha256sum0(rs1: u32) -> u32 {
205210
///
206211
/// This function is safe to use if the `zknh` target feature is present.
207212
#[target_feature(enable = "zknh")]
208-
#[cfg_attr(test, assert_instr(sha256sum1))]
213+
// See #1464
214+
// #[cfg_attr(test, assert_instr(sha256sum1))]
209215
#[inline]
210216
pub unsafe fn sha256sum1(rs1: u32) -> u32 {
211217
_sha256sum1(rs1 as i32) as u32
@@ -282,7 +288,8 @@ pub unsafe fn sha256sum1(rs1: u32) -> u32 {
282288
/// ```
283289
#[target_feature(enable = "zksed")]
284290
#[rustc_legacy_const_generics(2)]
285-
#[cfg_attr(test, assert_instr(sm4ed, BS = 0))]
291+
// See #1464
292+
// #[cfg_attr(test, assert_instr(sm4ed, BS = 0))]
286293
#[inline]
287294
pub unsafe fn sm4ed<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
288295
static_assert!(BS < 4);
@@ -361,7 +368,8 @@ pub unsafe fn sm4ed<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
361368
/// ```
362369
#[target_feature(enable = "zksed")]
363370
#[rustc_legacy_const_generics(2)]
364-
#[cfg_attr(test, assert_instr(sm4ks, BS = 0))]
371+
// See #1464
372+
// #[cfg_attr(test, assert_instr(sm4ks, BS = 0))]
365373
#[inline]
366374
pub unsafe fn sm4ks<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
367375
static_assert!(BS < 4);
@@ -401,7 +409,8 @@ pub unsafe fn sm4ks<const BS: u8>(rs1: u32, rs2: u32) -> u32 {
401409
/// compression function `CF` uses the intermediate value `TT2` to calculate
402410
/// the variable `E` in one iteration for subsequent processes.
403411
#[target_feature(enable = "zksh")]
404-
#[cfg_attr(test, assert_instr(sm3p0))]
412+
// See #1464
413+
// #[cfg_attr(test, assert_instr(sm3p0))]
405414
#[inline]
406415
pub unsafe fn sm3p0(rs1: u32) -> u32 {
407416
_sm3p0(rs1 as i32) as u32
@@ -445,7 +454,8 @@ pub unsafe fn sm3p0(rs1: u32) -> u32 {
445454
/// ENDFOR
446455
/// ```
447456
#[target_feature(enable = "zksh")]
448-
#[cfg_attr(test, assert_instr(sm3p1))]
457+
// See #1464
458+
// #[cfg_attr(test, assert_instr(sm3p1))]
449459
#[inline]
450460
pub unsafe fn sm3p1(rs1: u32) -> u32 {
451461
_sm3p1(rs1 as i32) as u32

0 commit comments

Comments
 (0)