[llvm] a8b726a - [AArch64][SVE] Change DupLane128Combine Index comparison to 0

Matt Devereau via llvm-commits llvm-commits at lists.llvm.org
Fri Jul 29 07:31:34 PDT 2022


Author: Matt Devereau
Date: 2022-07-29T14:31:00Z
New Revision: a8b726ac658a846c740cacff66806917779a7e11

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

LOG: [AArch64][SVE] Change DupLane128Combine Index comparison to 0

IdxInsert == IdxDupLane is incorrect. IdxInsert is the starting element number,
whereas IdxIndex is the index of a quadword

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 7ac8326b89aa..b78d68ec3295 100644
--- a/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+++ b/llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
@@ -19510,7 +19510,7 @@ static SDValue performDupLane128Combine(SDNode *N, SelectionDAG &DAG) {
 
   uint64_t IdxInsert = Insert.getConstantOperandVal(2);
   uint64_t IdxDupLane = N->getConstantOperandVal(1);
-  if (IdxInsert != IdxDupLane)
+  if (IdxInsert != 0 || IdxDupLane != 0)
     return SDValue();
 
   SDValue Bitcast = Insert.getOperand(1);


        


More information about the llvm-commits mailing list