Skip to content

Conversation

@JamieCunliffe
Copy link
Contributor

A hacky patch for a crater run to determine how widespread breakage would be if SIMD types could only be used in functions appropriately annotated with target_feature.

r? @davidtwco

@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Jul 9, 2025
@davidtwco
Copy link
Member

This will need rebased for the try build to pass.

@JamieCunliffe JamieCunliffe force-pushed the target-feature-type branch from 6ab7666 to 24569e6 Compare July 9, 2025 12:50
@rust-log-analyzer

This comment has been minimized.

@JamieCunliffe JamieCunliffe force-pushed the target-feature-type branch from 24569e6 to ddd98d5 Compare July 9, 2025 15:10
@rust-log-analyzer
Copy link
Collaborator

The job x86_64-gnu-miri failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
[RUSTC-TIMING] blake3 test:false 2.108
   Compiling scoped-tls v1.0.1
[RUSTC-TIMING] scoped_tls test:false 0.111
   Compiling zerofrom-derive v0.1.6
error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:100:9
    |
100 |     let MASK = _mm256_set_epi64x(
    |         ^^^^

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:109:21
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
    | |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:109:45
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
    | |                                             ^^^^^
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:110:21
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
    | |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:110:45
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
    | |                                             ^^^^^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:112:21
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
111 | |
112 | |             x[$i] = _mm256_shuffle_epi8(x[$i], MASK);
    | |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:112:41
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
111 | |
112 | |             x[$i] = _mm256_shuffle_epi8(x[$i], MASK);
    | |                                         ^^^^^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:115:38
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
...   |
115 | |             let y = _mm256_add_epi64(x[$i], _mm256_set_m128i(t, t));
    | |                                      ^^^^^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:115:45
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
...   |
115 | |             let y = _mm256_add_epi64(x[$i], _mm256_set_m128i(t, t));
    | |                                             ^^^^^^^^^^^^^^^^^^^^^^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:115:17
    |
107 | /     macro_rules! unrolled_iterations {
108 | |         ($($i:literal),*) => {$(
109 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add(8 + $i) as *const _), 1);
110 | |             x[$i] = _mm256_insertf128_si256(x[$i], _mm_loadu_si128(data.add($i) as *const _), 0);
...   |
115 | |             let y = _mm256_add_epi64(x[$i], _mm256_set_m128i(t, t));
    | |                 ^
...   |
119 | |         )*};
120 | |     }
    | |_____- in this expansion of `unrolled_iterations!`
121 |
122 |       unrolled_iterations!(0, 1, 2, 3, 4, 5, 6, 7);
    |       -------------------------------------------- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:158:45
    |
158 |             let y = sha512_update_x_avx2(x, _mm256_set_m128i(t, t));
    |                                             ^^^^^^^^^^^^^^^^^^^^^^

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:158:17
    |
158 |             let y = sha512_update_x_avx2(x, _mm256_set_m128i(t, t));
    |                 ^

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:256:17
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
256 | |             let mut t0 = $ALIGNR8(x[1], x[0], 8);
    | |                 ^^^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:256:35
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
256 | |             let mut t0 = $ALIGNR8(x[1], x[0], 8);
    | |                                   ^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:256:41
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
256 | |             let mut t0 = $ALIGNR8(x[1], x[0], 8);
    | |                                         ^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:258:17
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
258 | |             let mut t3 = $ALIGNR8(x[5], x[4], 8);
    | |                 ^^^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:258:35
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
258 | |             let mut t3 = $ALIGNR8(x[5], x[4], 8);
    | |                                   ^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:258:41
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
258 | |             let mut t3 = $ALIGNR8(x[5], x[4], 8);
    | |                                         ^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:260:17
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
260 | |             let mut t2 = $SRL64(t0, 1);
    | |                 ^^^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:260:33
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
260 | |             let mut t2 = $SRL64(t0, 1);
    | |                                 ^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:262:20
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
262 | |             x[0] = $ADD64(x[0], t3);
    | |                    ^^^^^^^^^^^^^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:262:27
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
262 | |             x[0] = $ADD64(x[0], t3);
    | |                           ^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:262:33
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
262 | |             x[0] = $ADD64(x[0], t3);
    | |                                 ^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:264:18
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
264 | |             t3 = $SRL64(t0, 7);
    | |                  ^^^^^^^^^^^^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:264:25
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
264 | |             t3 = $SRL64(t0, 7);
    | |                         ^^
...   |
320 | |     };
321 | | }
    | |_- in this expansion of `fn_sha512_update_x!`
...
331 | / fn_sha512_update_x!(sha512_update_x_avx2, __m256i, {
332 | |         ADD64 = _mm256_add_epi64,
333 | |         ALIGNR8 = _mm256_alignr_epi8,
334 | |         SRL64 = _mm256_srli_epi64,
335 | |         SLL64 = _mm256_slli_epi64,
336 | |         XOR = _mm256_xor_si256,
337 | | });
    | |__- in this macro invocation

error: The `core::arch::x86_64::__m256i` type depends on the target feature `avx` being enabled
   --> /cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sha2-0.10.9/src/sha512/x86.rs:266:17
    |
246 | / macro_rules! fn_sha512_update_x {
247 | |     ($name:ident, $ty:ident, {
248 | |         ADD64 = $ADD64:ident,
249 | |         ALIGNR8 = $ALIGNR8:ident,
...   |
266 | |             let mut t1 = $SLL64(t0, 64 - 8);
    | |                 ^^^^^^
...   |
320 | |     };

@bors
Copy link
Collaborator

bors commented Jul 17, 2025

☔ The latest upstream changes (presumably #142903) made this pull request unmergeable. Please resolve the merge conflicts.

@bors bors added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Jul 17, 2025
@davidtwco davidtwco closed this Oct 1, 2025
@rustbot rustbot removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Oct 1, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants