[PATCH] D17763: AVX512: Remove VSHRI kmask patterns from TD file

Elena Demikhovsky via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 2 07:13:52 PST 2016


delena added inline comments.

================
Comment at: lib/Target/X86/X86ISelLowering.cpp:4696
@@ +4695,3 @@
+  MVT WideOpVT = OpVT;
+  if(Subtarget.hasDQI() && OpVT.getSizeInBits() <= 8)
+    WideOpVT = MVT::v8i1;
----------------
" " after if

================
Comment at: lib/Target/X86/X86ISelLowering.cpp:4705
@@ +4704,3 @@
+  SDValue Undef = DAG.getUNDEF(WideOpVT);
+  SDValue WideSubVec = DAG.getNode(ISD::INSERT_SUBVECTOR, dl, WideOpVT,
+                                   Undef, SubVec, ZeroIdx);
----------------
if (OpVt == WideOpVT) you don't need insert

================
Comment at: lib/Target/X86/X86ISelLowering.cpp:4708
@@ +4707,3 @@
+  if (Vec.isUndef()) {
+    SDValue ShiftBits = DAG.getConstant(IdxVal, dl, MVT::i8);
+    Vec = DAG.getNode(X86ISD::VSHLI, dl, WideOpVT, WideSubVec, ShiftBits);
----------------
if index == 0, you don't need shift

================
Comment at: lib/Target/X86/X86ISelLowering.cpp:4710
@@ +4709,3 @@
+    Vec = DAG.getNode(X86ISD::VSHLI, dl, WideOpVT, WideSubVec, ShiftBits);
+    return DAG.getNode(ISD::EXTRACT_SUBVECTOR, dl, OpVT, Vec,ZeroIdx);
+  }
----------------
if (OpVt == WideOpVT) you don't need extract


Repository:
  rL LLVM

http://reviews.llvm.org/D17763





More information about the llvm-commits mailing list