]> granicus.if.org Git - llvm/commitdiff
[AArch64] armv8-A doesn't have LSE.
authorAhmed Bougacha <ahmed.bougacha@gmail.com>
Tue, 2 May 2017 00:45:01 +0000 (00:45 +0000)
committerAhmed Bougacha <ahmed.bougacha@gmail.com>
Tue, 2 May 2017 00:45:01 +0000 (00:45 +0000)
r288279 mistakenly added it to all arches, but it's only available
from v8.1 onwards.

The testcase is awkward, because (I suspect) of PR32873.

Spotted by inspection.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@301890 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Support/AArch64TargetParser.def
test/MC/AArch64/directive-arch-negative.s

index 46d253bf0ec772a563e3d96d7a047424d238f194..1700deadeaef95a6ebeb27bfb512391b5f6010cf 100644 (file)
@@ -21,7 +21,7 @@ AARCH64_ARCH("invalid", AK_INVALID, nullptr, nullptr,
 AARCH64_ARCH("armv8-a", AK_ARMV8A, "8-A", "v8", ARMBuildAttrs::CPUArch::v8_A,
              FK_CRYPTO_NEON_FP_ARMV8,
              (AArch64::AEK_CRC | AArch64::AEK_CRYPTO | AArch64::AEK_FP |
-              AArch64::AEK_SIMD | AArch64::AEK_LSE))
+              AArch64::AEK_SIMD))
 AARCH64_ARCH("armv8.1-a", AK_ARMV8_1A, "8.1-A", "v8.1a",
              ARMBuildAttrs::CPUArch::v8_A, FK_CRYPTO_NEON_FP_ARMV8,
              (AArch64::AEK_CRC | AArch64::AEK_CRYPTO | AArch64::AEK_FP |
index 43ccd7927252d40b32fac7bc07db98d1104e33fa..21fd90ebdf11117ea67117e499b785b0906b8209 100644 (file)
 # CHECK: error: instruction requires: ras
 # CHECK:         esb
 
+// PR32873: without extra features, '.arch' is currently ignored.
+// Add an unrelated feature to accept the directive.
+       .arch armv8+crc
+        casa  w5, w7, [x19]
+
+# CHECK: error: instruction requires: lse
+# CHECK:        casa  w5, w7, [x19]
+
        .arch armv8.1-a+nolse
         casa  w5, w7, [x20]