[X86] combineOrShiftToFunnelShift - remove shift by immediate handling.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 12 Mar 2020 11:46:28 +0000 (11:46 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Thu, 12 Mar 2020 11:46:51 +0000 (11:46 +0000)
Now that D75114 has landed, DAGCombiner handles this case so the code is redundant.

llvm/lib/Target/X86/X86ISelLowering.cpp

index 4c86c87..87e6503 100644 (file)
@@ -41626,10 +41626,6 @@ static SDValue combineOrShiftToFunnelShift(SDNode *N, SelectionDAG &DAG,
           ShAmt1Op1 == ShAmt0)
         return GetFunnelShift(Op0, Op1, ShAmt0);
     }
-  } else if (auto *ShAmt1C = dyn_cast<ConstantSDNode>(ShAmt1)) {
-    auto *ShAmt0C = dyn_cast<ConstantSDNode>(ShAmt0);
-    if (ShAmt0C && (ShAmt0C->getSExtValue() + ShAmt1C->getSExtValue()) == Bits)
-      return GetFunnelShift(Op0, Op1, ShAmt0);
   } else if (ShAmt1.getOpcode() == ISD::XOR) {
     SDValue Mask = ShAmt1.getOperand(1);
     if (auto *MaskC = dyn_cast<ConstantSDNode>(Mask)) {