[llvm] 1066dcb - [AArch64] Fix LowerMGATHER to return the chain result for floating point gathers.

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 19 11:54:00 PDT 2021


Author: Craig Topper
Date: 2021-03-19T11:53:46-07:00
New Revision: 1066dcb5503006acd193b9d2793e065a1098e0e3

URL: https://github.com/llvm/llvm-project/commit/1066dcb5503006acd193b9d2793e065a1098e0e3
DIFF: https://github.com/llvm/llvm-project/commit/1066dcb5503006acd193b9d2793e065a1098e0e3.diff

LOG: [AArch64] Fix LowerMGATHER to return the chain result for floating point gathers.

Found by adding asserts to LegalizeDAG to make sure custom legalized
results had the right types.

Reviewed By: kmclaughlin

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

Added: 
    

Modified: 
    llvm/lib/Target/AArch64/AArch64ISelLowering.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp b/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
index 757d838ad3fe..5ab8d8a5d6f1 100644
--- a/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+++ b/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
@@ -4118,7 +4118,7 @@ SDValue AArch64TargetLowering::LowerMGATHER(SDValue Op,
 
   if (VT.isFloatingPoint()) {
     SDValue Cast = getSVESafeBitCast(VT, Gather, DAG);
-    return DAG.getMergeValues({Cast, Gather}, DL);
+    return DAG.getMergeValues({Cast, Gather.getValue(1)}, DL);
   }
 
   return Gather;


        


More information about the llvm-commits mailing list