[llvm] 0b8471e - [SelectionDAG] Correctly determine the VECREDUCE_SEQ_FMUL action

Fraser Cormack via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 5 01:51:54 PDT 2021


Author: Fraser Cormack
Date: 2021-08-05T09:42:33+01:00
New Revision: 0b8471e91bb62f1174a46607e6533fcea2ac12c6

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

LOG: [SelectionDAG] Correctly determine the VECREDUCE_SEQ_FMUL action

The LegalizeAction for this node should follow the logic for
`VECREDUCE_SEQ_FADD` and be determined using the vector operand's type.

here isn't an in-tree target that makes use of this, but I think it's safe to
say this is how it should behave, should a target want to customize the action
for this node.

Reviewed By: dmgreen

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

Added: 
    

Modified: 
    llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
index d92b23f56e4de..2732c961c28fc 100644
--- a/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
+++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
@@ -1181,6 +1181,7 @@ void SelectionDAGLegalize::LegalizeOp(SDNode *Node) {
         Node->getOpcode(), Node->getOperand(0).getValueType());
     break;
   case ISD::VECREDUCE_SEQ_FADD:
+  case ISD::VECREDUCE_SEQ_FMUL:
     Action = TLI.getOperationAction(
         Node->getOpcode(), Node->getOperand(1).getValueType());
     break;


        


More information about the llvm-commits mailing list