[ARM][Driver] Fix i8mm feature string (#137771)

#137595 changed the behaviour for SIMD on ARM to ensure it is enabled
and disabled correctly depending on the options used by the user. In
this, the functionality to disable all features that depend on SIMD was
added. However, there was a spelling error for the i8mm feature, which
caused the `+nosimd` command to fail.

This fixes the error, and allows the command to work again.
This commit is contained in:
Jack Styles
2025-04-29 10:32:50 +01:00
committed by GitHub
parent 014ab736dc
commit bb9fa77c84
2 changed files with 11 additions and 1 deletions

View File

@@ -795,7 +795,7 @@ fp16_fml_fallthrough:
HasSimd = ItSimd->starts_with("+");
if (!HasSimd && FPUSupportsNeon)
Features.insert(Features.end(),
{"-sha2", "-aes", "-crypto", "-dotprod", "-bf16", "-imm8"});
{"-sha2", "-aes", "-crypto", "-dotprod", "-bf16", "-i8mm"});
// For Arch >= ARMv8.0 && A or R profile: crypto = sha2 + aes
// Rather than replace within the feature vector, determine whether each

View File

@@ -105,3 +105,13 @@
// RUN: %clang -target arm-none-none-eabi -march=armv8-r+bf16 -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NEON-ENABLED-WITH-FEATURE %s
// RUN: %clang -target arm-none-none-eabi -march=armv8-r+i8mm -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NEON-ENABLED-WITH-FEATURE %s
// CHECK-NEON-ENABLED-WITH-FEATURE: "-target-feature" "+neon"
// Check that disabling NEON disables all features associated with this
// RUN: %clang -target arm-none-none-eabi -march=armv8-a+nosimd -### -c %s 2>&1 | FileCheck -check-prefix=CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES %s
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-neon"
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-dotprod"
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-bf16"
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-i8mm"
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-crypto"
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-sha2"
// CHECK-NEON-DISABLED-DISABLES-ALL-DEPENDENCIES: "-target-feature" "-aes"