[llvm] 248eaff - [AArch64] SVE implies fullfp16

Eli Friedman via llvm-commits llvm-commits at lists.llvm.org
Mon Feb 24 17:19:57 PST 2020


Author: Eli Friedman
Date: 2020-02-24T17:19:35-08:00
New Revision: 248eaff823725fd35816b3486526a4515fb7c885

URL: https://github.com/llvm/llvm-project/commit/248eaff823725fd35816b3486526a4515fb7c885
DIFF: https://github.com/llvm/llvm-project/commit/248eaff823725fd35816b3486526a4515fb7c885.diff

LOG: [AArch64] SVE implies fullfp16

This is explicitly guaranteed in ARMARM. And it makes reasoning about
vectors easier: we can assume that if a vector operation is legal, the
corresponding scalar operation is also legal.

Differential Revision: https://reviews.llvm.org/D74993

Added: 
    

Modified: 
    llvm/lib/Target/AArch64/AArch64.td
    llvm/test/CodeGen/AArch64/sve-vector-splat.ll

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/AArch64/AArch64.td b/llvm/lib/Target/AArch64/AArch64.td
index 2e24e804e95c..df35bb4b5283 100644
--- a/llvm/lib/Target/AArch64/AArch64.td
+++ b/llvm/lib/Target/AArch64/AArch64.td
@@ -101,7 +101,7 @@ def FeatureCCPP : SubtargetFeature<"ccpp", "HasCCPP",
     "true", "Enable v8.2 data Cache Clean to Point of Persistence" >;
 
 def FeatureSVE : SubtargetFeature<"sve", "HasSVE", "true",
-  "Enable Scalable Vector Extension (SVE) instructions">;
+  "Enable Scalable Vector Extension (SVE) instructions", [FeatureFullFP16]>;
 
 def FeatureSVE2 : SubtargetFeature<"sve2", "HasSVE2", "true",
   "Enable Scalable Vector Extension 2 (SVE2) instructions", [FeatureSVE]>;

diff  --git a/llvm/test/CodeGen/AArch64/sve-vector-splat.ll b/llvm/test/CodeGen/AArch64/sve-vector-splat.ll
index 531b1b960147..5bacbee042c0 100644
--- a/llvm/test/CodeGen/AArch64/sve-vector-splat.ll
+++ b/llvm/test/CodeGen/AArch64/sve-vector-splat.ll
@@ -1,4 +1,4 @@
-; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve,+fullfp16  < %s | FileCheck %s
+; RUN: llc -mtriple=aarch64-linux-gnu -mattr=+sve < %s | FileCheck %s
 
 ;; Splats of legal integer vector types
 


        


More information about the llvm-commits mailing list