Remove redundant implied features
This commit is contained in:
parent
a25da077cf
commit
5006711744
@ -239,40 +239,8 @@ pub fn to_llvm_features<'a>(sess: &Session, s: &'a str) -> LLVMFeature<'a> {
|
|||||||
}
|
}
|
||||||
// In LLVM neon implicitly enables fp, but we manually enable
|
// In LLVM neon implicitly enables fp, but we manually enable
|
||||||
// neon when a feature only implicitly enables fp
|
// neon when a feature only implicitly enables fp
|
||||||
("aarch64", "f32mm") => {
|
("aarch64", "fhm") => LLVMFeature::new("fp16fml"),
|
||||||
LLVMFeature::with_dependency("f32mm", TargetFeatureFoldStrength::EnableOnly("neon"))
|
("aarch64", "fp16") => LLVMFeature::new("fullfp16"),
|
||||||
}
|
|
||||||
("aarch64", "f64mm") => {
|
|
||||||
LLVMFeature::with_dependency("f64mm", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "fhm") => {
|
|
||||||
LLVMFeature::with_dependency("fp16fml", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "fp16") => {
|
|
||||||
LLVMFeature::with_dependency("fullfp16", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "jsconv") => {
|
|
||||||
LLVMFeature::with_dependency("jsconv", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "sve") => {
|
|
||||||
LLVMFeature::with_dependency("sve", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "sve2") => {
|
|
||||||
LLVMFeature::with_dependency("sve2", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "sve2-aes") => {
|
|
||||||
LLVMFeature::with_dependency("sve2-aes", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "sve2-sm4") => {
|
|
||||||
LLVMFeature::with_dependency("sve2-sm4", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "sve2-sha3") => {
|
|
||||||
LLVMFeature::with_dependency("sve2-sha3", TargetFeatureFoldStrength::EnableOnly("neon"))
|
|
||||||
}
|
|
||||||
("aarch64", "sve2-bitperm") => LLVMFeature::with_dependency(
|
|
||||||
"sve2-bitperm",
|
|
||||||
TargetFeatureFoldStrength::EnableOnly("neon"),
|
|
||||||
),
|
|
||||||
// In LLVM 18, `unaligned-scalar-mem` was merged with `unaligned-vector-mem` into a single feature called
|
// In LLVM 18, `unaligned-scalar-mem` was merged with `unaligned-vector-mem` into a single feature called
|
||||||
// `fast-unaligned-access`. In LLVM 19, it was split back out.
|
// `fast-unaligned-access`. In LLVM 19, it was split back out.
|
||||||
("riscv32" | "riscv64", "unaligned-scalar-mem") if get_version().0 == 18 => {
|
("riscv32" | "riscv64", "unaligned-scalar-mem") if get_version().0 == 18 => {
|
||||||
|
@ -118,13 +118,15 @@ pub fn is_stable(self) -> bool {
|
|||||||
// FEAT_FLAGM
|
// FEAT_FLAGM
|
||||||
("flagm", Stable, &[]),
|
("flagm", Stable, &[]),
|
||||||
// FEAT_FP16
|
// FEAT_FP16
|
||||||
("fp16", Stable, &[]),
|
// Rust ties FP and Neon: https://github.com/rust-lang/rust/pull/91608
|
||||||
|
("fp16", Stable, &["neon"]),
|
||||||
// FEAT_FRINTTS
|
// FEAT_FRINTTS
|
||||||
("frintts", Stable, &[]),
|
("frintts", Stable, &[]),
|
||||||
// FEAT_I8MM
|
// FEAT_I8MM
|
||||||
("i8mm", Stable, &[]),
|
("i8mm", Stable, &[]),
|
||||||
// FEAT_JSCVT
|
// FEAT_JSCVT
|
||||||
("jsconv", Stable, &[]),
|
// Rust ties FP and Neon: https://github.com/rust-lang/rust/pull/91608
|
||||||
|
("jsconv", Stable, &["neon"]),
|
||||||
// FEAT_LOR
|
// FEAT_LOR
|
||||||
("lor", Stable, &[]),
|
("lor", Stable, &[]),
|
||||||
// FEAT_LSE
|
// FEAT_LSE
|
||||||
|
Loading…
Reference in New Issue
Block a user