]> granicus.if.org Git - llvm/commitdiff
[X86][AVX] Remove LowerCTTZ's AVX1 custom vector handling.
authorSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 17 May 2019 14:37:19 +0000 (14:37 +0000)
committerSimon Pilgrim <llvm-dev@redking.me.uk>
Fri, 17 May 2019 14:37:19 +0000 (14:37 +0000)
We can now rely on generic expansion to handle this.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@361038 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/X86/X86ISelLowering.cpp

index 6366f2e4f7c0601c16cb8c3158900e79eaad2aed..a52d0faa35bf024ac170e0fbe849dcb8ace0cb02 100644 (file)
@@ -1190,9 +1190,6 @@ X86TargetLowering::X86TargetLowering(const X86TargetMachine &TM,
       setOperationAction(ISD::CTPOP,           VT, Custom);
       setOperationAction(ISD::CTLZ,            VT, Custom);
 
-      // TODO - remove this once 256-bit X86ISD::ANDNP correctly split.
-      setOperationAction(ISD::CTTZ,  VT, HasInt256 ? Expand : Custom);
-
       // The condition codes aren't legal in SSE/AVX and under AVX512 we use
       // setcc all the way to isel and prefer SETGT in some isel patterns.
       setCondCodeAction(ISD::SETLT, VT, Custom);
@@ -24018,10 +24015,6 @@ static SDValue LowerCTTZ(SDValue Op, const X86Subtarget &Subtarget,
   SDValue N0 = Op.getOperand(0);
   SDLoc dl(Op);
 
-  // Decompose 256-bit ops into smaller 128-bit ops.
-  if (VT.is256BitVector() && !Subtarget.hasInt256())
-    return Lower256IntUnary(Op, DAG);
-
   assert(!VT.isVector() && Op.getOpcode() == ISD::CTTZ &&
          "Only scalar CTTZ requires custom lowering");