Skip to content

Commit 308b82c

Browse files
committed
Stabilize avx512_target_feature
1 parent 81d8c74 commit 308b82c

21 files changed

+64
-74
lines changed

Diff for: compiler/rustc_feature/src/accepted.rs

+2
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,8 @@ declare_features! (
8282
(accepted, attr_literals, "1.30.0", Some(34981)),
8383
/// Allows overloading augmented assignment operations like `a += b`.
8484
(accepted, augmented_assignments, "1.8.0", Some(28235)),
85+
/// Allows using `avx512*` target features
86+
(accepted, avx512_target_feature, "CURRENT_RUSTC_VERSION", Some(44839)),
8587
/// Allows mixing bind-by-move in patterns and references to those identifiers in guards.
8688
(accepted, bind_by_move_pattern_guards, "1.39.0", Some(15287)),
8789
/// Allows bindings in the subpattern of a binding pattern.

Diff for: compiler/rustc_feature/src/unstable.rs

-1
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,6 @@ declare_features! (
315315
(unstable, aarch64_unstable_target_feature, "1.82.0", Some(44839)),
316316
(unstable, aarch64_ver_target_feature, "1.27.0", Some(44839)),
317317
(unstable, arm_target_feature, "1.27.0", Some(44839)),
318-
(unstable, avx512_target_feature, "1.27.0", Some(44839)),
319318
(unstable, bpf_target_feature, "1.54.0", Some(44839)),
320319
(unstable, csky_target_feature, "1.73.0", Some(44839)),
321320
(unstable, ermsb_target_feature, "1.49.0", Some(44839)),

Diff for: compiler/rustc_target/src/target_features.rs

+22-22
Original file line numberDiff line numberDiff line change
@@ -392,33 +392,33 @@ static X86_FEATURES: &[(&str, Stability, ImpliedFeatures)] = &[
392392
("amx-transpose", Unstable(sym::x86_amx_intrinsics), &["amx-tile"]),
393393
("avx", Stable, &["sse4.2"]),
394394
("avx2", Stable, &["avx"]),
395-
("avx512bf16", Unstable(sym::avx512_target_feature), &["avx512bw"]),
396-
("avx512bitalg", Unstable(sym::avx512_target_feature), &["avx512bw"]),
397-
("avx512bw", Unstable(sym::avx512_target_feature), &["avx512f"]),
398-
("avx512cd", Unstable(sym::avx512_target_feature), &["avx512f"]),
399-
("avx512dq", Unstable(sym::avx512_target_feature), &["avx512f"]),
400-
("avx512f", Unstable(sym::avx512_target_feature), &["avx2", "fma", "f16c"]),
401-
("avx512fp16", Unstable(sym::avx512_target_feature), &["avx512bw", "avx512vl", "avx512dq"]),
402-
("avx512ifma", Unstable(sym::avx512_target_feature), &["avx512f"]),
403-
("avx512vbmi", Unstable(sym::avx512_target_feature), &["avx512bw"]),
404-
("avx512vbmi2", Unstable(sym::avx512_target_feature), &["avx512bw"]),
405-
("avx512vl", Unstable(sym::avx512_target_feature), &["avx512f"]),
406-
("avx512vnni", Unstable(sym::avx512_target_feature), &["avx512f"]),
407-
("avx512vp2intersect", Unstable(sym::avx512_target_feature), &["avx512f"]),
408-
("avx512vpopcntdq", Unstable(sym::avx512_target_feature), &["avx512f"]),
409-
("avxifma", Unstable(sym::avx512_target_feature), &["avx2"]),
410-
("avxneconvert", Unstable(sym::avx512_target_feature), &["avx2"]),
411-
("avxvnni", Unstable(sym::avx512_target_feature), &["avx2"]),
412-
("avxvnniint16", Unstable(sym::avx512_target_feature), &["avx2"]),
413-
("avxvnniint8", Unstable(sym::avx512_target_feature), &["avx2"]),
395+
("avx512bf16", Stable, &["avx512bw"]),
396+
("avx512bitalg", Stable, &["avx512bw"]),
397+
("avx512bw", Stable, &["avx512f"]),
398+
("avx512cd", Stable, &["avx512f"]),
399+
("avx512dq", Stable, &["avx512f"]),
400+
("avx512f", Stable, &["avx2", "fma", "f16c"]),
401+
("avx512fp16", Stable, &["avx512bw", "avx512vl", "avx512dq"]),
402+
("avx512ifma", Stable, &["avx512f"]),
403+
("avx512vbmi", Stable, &["avx512bw"]),
404+
("avx512vbmi2", Stable, &["avx512bw"]),
405+
("avx512vl", Stable, &["avx512f"]),
406+
("avx512vnni", Stable, &["avx512f"]),
407+
("avx512vp2intersect", Stable, &["avx512f"]),
408+
("avx512vpopcntdq", Stable, &["avx512f"]),
409+
("avxifma", Stable, &["avx2"]),
410+
("avxneconvert", Stable, &["avx2"]),
411+
("avxvnni", Stable, &["avx2"]),
412+
("avxvnniint16", Stable, &["avx2"]),
413+
("avxvnniint8", Stable, &["avx2"]),
414414
("bmi1", Stable, &[]),
415415
("bmi2", Stable, &[]),
416416
("cmpxchg16b", Stable, &[]),
417417
("ermsb", Unstable(sym::ermsb_target_feature), &[]),
418418
("f16c", Stable, &["avx"]),
419419
("fma", Stable, &["avx"]),
420420
("fxsr", Stable, &[]),
421-
("gfni", Unstable(sym::avx512_target_feature), &["sse2"]),
421+
("gfni", Stable, &["sse2"]),
422422
("kl", Unstable(sym::keylocker_x86), &["sse2"]),
423423
("lahfsahf", Unstable(sym::lahfsahf_target_feature), &[]),
424424
("lzcnt", Stable, &[]),
@@ -445,8 +445,8 @@ static X86_FEATURES: &[(&str, Stability, ImpliedFeatures)] = &[
445445
("sse4a", Unstable(sym::sse4a_target_feature), &["sse3"]),
446446
("ssse3", Stable, &["sse3"]),
447447
("tbm", Unstable(sym::tbm_target_feature), &[]),
448-
("vaes", Unstable(sym::avx512_target_feature), &["avx2", "aes"]),
449-
("vpclmulqdq", Unstable(sym::avx512_target_feature), &["avx", "pclmulqdq"]),
448+
("vaes", Stable, &["avx2", "aes"]),
449+
("vpclmulqdq", Stable, &["avx", "pclmulqdq"]),
450450
("widekl", Unstable(sym::keylocker_x86), &["kl"]),
451451
("x87", Unstable(sym::x87_target_feature), &[]),
452452
("xop", Unstable(sym::xop_target_feature), &[/*"fma4", */ "avx", "sse4a"]),

Diff for: library/core/src/lib.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -190,9 +190,9 @@
190190
//
191191
// Target features:
192192
// tidy-alphabetical-start
193+
#![cfg_attr(bootstrap, feature(avx512_target_feature))]
193194
#![feature(aarch64_unstable_target_feature)]
194195
#![feature(arm_target_feature)]
195-
#![feature(avx512_target_feature)]
196196
#![feature(hexagon_target_feature)]
197197
#![feature(keylocker_x86)]
198198
#![feature(loongarch_target_feature)]

Diff for: library/stdarch

Diff for: src/tools/miri/tests/pass/shims/x86/intrinsics-x86-aes-vaes.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
//@only-target: x86_64 i686
33
//@compile-flags: -C target-feature=+aes,+vaes,+avx512f
44

5-
#![feature(avx512_target_feature, stdarch_x86_avx512)]
5+
#![feature(stdarch_x86_avx512)]
66

77
use core::mem::transmute;
88
#[cfg(target_arch = "x86")]

Diff for: src/tools/miri/tests/pass/shims/x86/intrinsics-x86-avx512.rs

-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
//@only-target: x86_64 i686
33
//@compile-flags: -C target-feature=+avx512f,+avx512vl,+avx512bitalg,+avx512vpopcntdq
44

5-
#![feature(avx512_target_feature)]
65
#![feature(stdarch_x86_avx512)]
76

87
#[cfg(target_arch = "x86")]

Diff for: src/tools/miri/tests/pass/shims/x86/intrinsics-x86-gfni.rs

-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
// be interpreted as integers; signedness does not make sense for them, but
77
// __mXXXi happens to be defined in terms of signed integers.
88
#![allow(overflowing_literals)]
9-
#![feature(avx512_target_feature)]
109
#![feature(stdarch_x86_avx512)]
1110

1211
#[cfg(target_arch = "x86")]

Diff for: src/tools/miri/tests/pass/shims/x86/intrinsics-x86-vpclmulqdq.rs

-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
// be interpreted as integers; signedness does not make sense for them, but
99
// __mXXXi happens to be defined in terms of signed integers.
1010
#![allow(overflowing_literals)]
11-
#![feature(avx512_target_feature)]
1211
#![feature(stdarch_x86_avx512)]
1312

1413
#[cfg(target_arch = "x86")]

Diff for: tests/ui/abi/homogenous-floats-target-feature-mixup.rs

-2
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
//@ run-pass
88
//@ needs-subprocess
99

10-
#![feature(avx512_target_feature)]
11-
1210
#![allow(overflowing_literals)]
1311
#![allow(unused_variables)]
1412

Diff for: tests/ui/abi/simd-abi-checks-avx.rs

-1
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@
33
//@ ignore-pass (test emits codegen-time warnings)
44
//@ compile-flags: -C target-feature=-avx
55

6-
#![feature(avx512_target_feature)]
76
#![feature(portable_simd)]
87
#![feature(simd_ffi)]
98
#![allow(improper_ctypes_definitions)]

Diff for: tests/ui/abi/simd-abi-checks-avx.stderr

+22-22
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
2-
--> $DIR/simd-abi-checks-avx.rs:65:11
2+
--> $DIR/simd-abi-checks-avx.rs:64:11
33
|
44
LL | f(g());
55
| ^^^ function called here
@@ -10,7 +10,7 @@ LL | f(g());
1010
= note: `#[warn(abi_unsupported_vector_types)]` on by default
1111

1212
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
13-
--> $DIR/simd-abi-checks-avx.rs:65:9
13+
--> $DIR/simd-abi-checks-avx.rs:64:9
1414
|
1515
LL | f(g());
1616
| ^^^^^^ function called here
@@ -20,7 +20,7 @@ LL | f(g());
2020
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
2121

2222
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
23-
--> $DIR/simd-abi-checks-avx.rs:73:14
23+
--> $DIR/simd-abi-checks-avx.rs:72:14
2424
|
2525
LL | gavx(favx());
2626
| ^^^^^^ function called here
@@ -30,7 +30,7 @@ LL | gavx(favx());
3030
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
3131

3232
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
33-
--> $DIR/simd-abi-checks-avx.rs:73:9
33+
--> $DIR/simd-abi-checks-avx.rs:72:9
3434
|
3535
LL | gavx(favx());
3636
| ^^^^^^^^^^^^ function called here
@@ -40,7 +40,7 @@ LL | gavx(favx());
4040
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
4141

4242
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
43-
--> $DIR/simd-abi-checks-avx.rs:85:19
43+
--> $DIR/simd-abi-checks-avx.rs:84:19
4444
|
4545
LL | w(Wrapper(g()));
4646
| ^^^ function called here
@@ -50,7 +50,7 @@ LL | w(Wrapper(g()));
5050
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
5151

5252
warning: this function call uses SIMD vector type `Wrapper` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
53-
--> $DIR/simd-abi-checks-avx.rs:85:9
53+
--> $DIR/simd-abi-checks-avx.rs:84:9
5454
|
5555
LL | w(Wrapper(g()));
5656
| ^^^^^^^^^^^^^^^ function called here
@@ -60,7 +60,7 @@ LL | w(Wrapper(g()));
6060
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
6161

6262
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
63-
--> $DIR/simd-abi-checks-avx.rs:101:9
63+
--> $DIR/simd-abi-checks-avx.rs:100:9
6464
|
6565
LL | some_extern();
6666
| ^^^^^^^^^^^^^ function called here
@@ -70,7 +70,7 @@ LL | some_extern();
7070
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
7171

7272
warning: this function definition uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled
73-
--> $DIR/simd-abi-checks-avx.rs:28:1
73+
--> $DIR/simd-abi-checks-avx.rs:27:1
7474
|
7575
LL | unsafe extern "C" fn g() -> __m256 {
7676
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
@@ -80,7 +80,7 @@ LL | unsafe extern "C" fn g() -> __m256 {
8080
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
8181

8282
warning: this function definition uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled
83-
--> $DIR/simd-abi-checks-avx.rs:22:1
83+
--> $DIR/simd-abi-checks-avx.rs:21:1
8484
|
8585
LL | unsafe extern "C" fn f(_: __m256) {
8686
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
@@ -90,7 +90,7 @@ LL | unsafe extern "C" fn f(_: __m256) {
9090
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
9191

9292
warning: this function definition uses SIMD vector type `Wrapper` which (with the chosen ABI) requires the `avx` target feature, which is not enabled
93-
--> $DIR/simd-abi-checks-avx.rs:16:1
93+
--> $DIR/simd-abi-checks-avx.rs:15:1
9494
|
9595
LL | unsafe extern "C" fn w(_: Wrapper) {
9696
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
@@ -100,7 +100,7 @@ LL | unsafe extern "C" fn w(_: Wrapper) {
100100
= help: consider enabling it globally (`-C target-feature=+avx`) or locally (`#[target_feature(enable="avx")]`)
101101

102102
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
103-
--> $DIR/simd-abi-checks-avx.rs:58:8
103+
--> $DIR/simd-abi-checks-avx.rs:57:8
104104
|
105105
LL | || g()
106106
| ^^^ function called here
@@ -113,7 +113,7 @@ warning: 11 warnings emitted
113113

114114
Future incompatibility report: Future breakage diagnostic:
115115
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
116-
--> $DIR/simd-abi-checks-avx.rs:65:11
116+
--> $DIR/simd-abi-checks-avx.rs:64:11
117117
|
118118
LL | f(g());
119119
| ^^^ function called here
@@ -125,7 +125,7 @@ LL | f(g());
125125

126126
Future breakage diagnostic:
127127
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
128-
--> $DIR/simd-abi-checks-avx.rs:65:9
128+
--> $DIR/simd-abi-checks-avx.rs:64:9
129129
|
130130
LL | f(g());
131131
| ^^^^^^ function called here
@@ -137,7 +137,7 @@ LL | f(g());
137137

138138
Future breakage diagnostic:
139139
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
140-
--> $DIR/simd-abi-checks-avx.rs:73:14
140+
--> $DIR/simd-abi-checks-avx.rs:72:14
141141
|
142142
LL | gavx(favx());
143143
| ^^^^^^ function called here
@@ -149,7 +149,7 @@ LL | gavx(favx());
149149

150150
Future breakage diagnostic:
151151
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
152-
--> $DIR/simd-abi-checks-avx.rs:73:9
152+
--> $DIR/simd-abi-checks-avx.rs:72:9
153153
|
154154
LL | gavx(favx());
155155
| ^^^^^^^^^^^^ function called here
@@ -161,7 +161,7 @@ LL | gavx(favx());
161161

162162
Future breakage diagnostic:
163163
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
164-
--> $DIR/simd-abi-checks-avx.rs:85:19
164+
--> $DIR/simd-abi-checks-avx.rs:84:19
165165
|
166166
LL | w(Wrapper(g()));
167167
| ^^^ function called here
@@ -173,7 +173,7 @@ LL | w(Wrapper(g()));
173173

174174
Future breakage diagnostic:
175175
warning: this function call uses SIMD vector type `Wrapper` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
176-
--> $DIR/simd-abi-checks-avx.rs:85:9
176+
--> $DIR/simd-abi-checks-avx.rs:84:9
177177
|
178178
LL | w(Wrapper(g()));
179179
| ^^^^^^^^^^^^^^^ function called here
@@ -185,7 +185,7 @@ LL | w(Wrapper(g()));
185185

186186
Future breakage diagnostic:
187187
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
188-
--> $DIR/simd-abi-checks-avx.rs:101:9
188+
--> $DIR/simd-abi-checks-avx.rs:100:9
189189
|
190190
LL | some_extern();
191191
| ^^^^^^^^^^^^^ function called here
@@ -197,7 +197,7 @@ LL | some_extern();
197197

198198
Future breakage diagnostic:
199199
warning: this function definition uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled
200-
--> $DIR/simd-abi-checks-avx.rs:28:1
200+
--> $DIR/simd-abi-checks-avx.rs:27:1
201201
|
202202
LL | unsafe extern "C" fn g() -> __m256 {
203203
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
@@ -209,7 +209,7 @@ LL | unsafe extern "C" fn g() -> __m256 {
209209

210210
Future breakage diagnostic:
211211
warning: this function definition uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled
212-
--> $DIR/simd-abi-checks-avx.rs:22:1
212+
--> $DIR/simd-abi-checks-avx.rs:21:1
213213
|
214214
LL | unsafe extern "C" fn f(_: __m256) {
215215
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
@@ -221,7 +221,7 @@ LL | unsafe extern "C" fn f(_: __m256) {
221221

222222
Future breakage diagnostic:
223223
warning: this function definition uses SIMD vector type `Wrapper` which (with the chosen ABI) requires the `avx` target feature, which is not enabled
224-
--> $DIR/simd-abi-checks-avx.rs:16:1
224+
--> $DIR/simd-abi-checks-avx.rs:15:1
225225
|
226226
LL | unsafe extern "C" fn w(_: Wrapper) {
227227
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ function defined here
@@ -233,7 +233,7 @@ LL | unsafe extern "C" fn w(_: Wrapper) {
233233

234234
Future breakage diagnostic:
235235
warning: this function call uses SIMD vector type `std::arch::x86_64::__m256` which (with the chosen ABI) requires the `avx` target feature, which is not enabled in the caller
236-
--> $DIR/simd-abi-checks-avx.rs:58:8
236+
--> $DIR/simd-abi-checks-avx.rs:57:8
237237
|
238238
LL | || g()
239239
| ^^^ function called here

Diff for: tests/ui/asm/x86_64/evex512-implicit-feature.rs

-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
//@ only-x86_64
33
//@ compile-flags: --crate-type=lib -C target-cpu=skylake
44

5-
#![feature(avx512_target_feature)]
65
#![feature(stdarch_x86_avx512)]
76

87
use std::arch::x86_64::*;

Diff for: tests/ui/asm/x86_64/target-feature-attr.rs

-2
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,6 @@
22
// Set the base cpu explicitly, in case the default has been changed.
33
//@ compile-flags: -C target-cpu=x86-64
44

5-
#![feature(avx512_target_feature)]
6-
75
use std::arch::asm;
86

97
#[target_feature(enable = "avx")]

Diff for: tests/ui/asm/x86_64/target-feature-attr.stderr

+4-4
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
error: register class `ymm_reg` requires the `avx` target feature
2-
--> $DIR/target-feature-attr.rs:20:40
2+
--> $DIR/target-feature-attr.rs:18:40
33
|
44
LL | asm!("vaddps {2:y}, {0:y}, {1:y}", in(ymm_reg) x, in(ymm_reg) y, lateout(ymm_reg) x);
55
| ^^^^^^^^^^^^^
66

77
error: register class `ymm_reg` requires the `avx` target feature
8-
--> $DIR/target-feature-attr.rs:20:55
8+
--> $DIR/target-feature-attr.rs:18:55
99
|
1010
LL | asm!("vaddps {2:y}, {0:y}, {1:y}", in(ymm_reg) x, in(ymm_reg) y, lateout(ymm_reg) x);
1111
| ^^^^^^^^^^^^^
1212

1313
error: register class `ymm_reg` requires the `avx` target feature
14-
--> $DIR/target-feature-attr.rs:20:70
14+
--> $DIR/target-feature-attr.rs:18:70
1515
|
1616
LL | asm!("vaddps {2:y}, {0:y}, {1:y}", in(ymm_reg) x, in(ymm_reg) y, lateout(ymm_reg) x);
1717
| ^^^^^^^^^^^^^^^^^^
1818

1919
error: register class `kreg` requires at least one of the following target features: avx512bw, avx512f
20-
--> $DIR/target-feature-attr.rs:35:23
20+
--> $DIR/target-feature-attr.rs:33:23
2121
|
2222
LL | asm!("/* {0} */", in(kreg) x);
2323
| ^^^^^^^^^^

Diff for: tests/ui/simd/target-feature-mixup.rs

-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
//@ ignore-fuchsia must translate zircon signal to SIGILL, FIXME (#58590)
88

99
#![feature(repr_simd, target_feature, cfg_target_feature)]
10-
#![feature(avx512_target_feature)]
1110

1211
use std::process::{Command, ExitStatus};
1312
use std::env;

0 commit comments

Comments
 (0)