[PATCH] D37974: [AArch64] Add V8_2aOps feature to Cortex-A55 and 75

Sam Parker via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 18 06:48:38 PDT 2017


samparker created this revision.
Herald added subscribers: kristof.beyls, javed.absar, rengolin, aemerson.

Add the missing hardware features the ProcA55 and Proc75 feature. These are already enabled via the target parser, but I had missed them in the backend.


https://reviews.llvm.org/D37974

Files:
  lib/Target/AArch64/AArch64.td
  test/MC/AArch64/armv8.1a-lse.s
  test/MC/AArch64/crc.s
  test/MC/AArch64/ras-extension.s


Index: test/MC/AArch64/ras-extension.s
===================================================================
--- test/MC/AArch64/ras-extension.s
+++ test/MC/AArch64/ras-extension.s
@@ -1,4 +1,6 @@
 // RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mattr=+ras < %s | FileCheck %s
+// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mcpu=cortex-a55 < %s | FileCheck %s
+// RUN: llvm-mc -triple aarch64-none-linux-gnu -show-encoding -mcpu=cortex-a75 < %s | FileCheck %s
 
   esb
 // CHECK: esb                             // encoding: [0x1f,0x22,0x03,0xd5]
Index: test/MC/AArch64/crc.s
===================================================================
--- test/MC/AArch64/crc.s
+++ test/MC/AArch64/crc.s
@@ -1,6 +1,11 @@
 // RUN: llvm-mc -triple aarch64-- -mattr=+crc %s 2>&1 |\
 // RUN:   FileCheck %s --check-prefix=CRC
 
+// RUN: llvm-mc -triple aarch64-- -mcpu=cortex-a55 %s 2>&1 |\
+// RUN:   FileCheck %s --check-prefix=CRC
+// RUN: llvm-mc -triple aarch64-- -mcpu=cortex-a75 %s 2>&1 |\
+// RUN:   FileCheck %s --check-prefix=CRC
+
 // RUN: not llvm-mc -triple aarch64-- %s 2>&1 |\
 // RUN:   FileCheck %s --check-prefix=NOCRC
 // RUN: not llvm-mc -triple aarch64-- -mcpu=cyclone %s 2>&1 |\
Index: test/MC/AArch64/armv8.1a-lse.s
===================================================================
--- test/MC/AArch64/armv8.1a-lse.s
+++ test/MC/AArch64/armv8.1a-lse.s
@@ -1,5 +1,9 @@
 // RUN: not llvm-mc -triple aarch64-none-linux-gnu -mattr=+v8.1a,+lse -show-encoding < %s 2> %t | FileCheck %s
 // RUN: FileCheck -check-prefix=CHECK-ERROR < %t %s
+// RUN: not llvm-mc -triple aarch64-none-linux-gnu -mcpu=cortex-a55 -show-encoding < %s 2> %t | FileCheck %s
+// RUN: FileCheck -check-prefix=CHECK-ERROR < %t %s
+// RUN: not llvm-mc -triple aarch64-none-linux-gnu -mcpu=cortex-a75 -show-encoding < %s 2> %t | FileCheck %s
+// RUN: FileCheck -check-prefix=CHECK-ERROR < %t %s
   .text
 
   cas w0, w1, [x2]
Index: lib/Target/AArch64/AArch64.td
===================================================================
--- lib/Target/AArch64/AArch64.td
+++ lib/Target/AArch64/AArch64.td
@@ -215,6 +215,7 @@
 
 def ProcA55     : SubtargetFeature<"a55", "ARMProcFamily", "CortexA55",
                                    "Cortex-A55 ARM processors", [
+                                   HasV8_2aOps,
                                    FeatureCrypto,
                                    FeatureFPARMv8,
                                    FeatureFuseAES,
@@ -262,6 +263,7 @@
 
 def ProcA75     : SubtargetFeature<"a75", "ARMProcFamily", "CortexA75",
                                    "Cortex-A75 ARM processors", [
+                                   HasV8_2aOps,
                                    FeatureCrypto,
                                    FeatureFPARMv8,
                                    FeatureFuseAES,


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37974.115636.patch
Type: text/x-patch
Size: 2838 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170918/213cbf90/attachment.bin>


More information about the llvm-commits mailing list