[PATCH] D17913: AVX512BW: Support llvm intrinsic masked vector load/store for i8/i16 element types on SKX
Elena Demikhovsky via llvm-commits
llvm-commits at lists.llvm.org
Sun Mar 6 03:54:47 PST 2016
delena added inline comments.
================
Comment at: lib/Target/X86/X86ISelLowering.cpp:20834
@@ -20820,2 +20833,3 @@
MVT VT = DataToStore.getSimpleValueType();
+ MVT ScalarVT = VT.getVectorElementType();
SDValue Mask = N->getMask();
----------------
You use ScalarVT in assert. Buildbot will fail.
================
Comment at: lib/Target/X86/X86ISelLowering.cpp:20837
@@ -20822,16 +20836,3 @@
SDLoc dl(Op);
-
- if (Subtarget.hasAVX512() && !Subtarget.hasVLX() &&
- !VT.is512BitVector() && Mask.getValueType() == MVT::v8i1) {
- // This operation is legal for targets with VLX, but without
- // VLX the vector should be widened to 512 bit
- unsigned NumEltsInWideVec = 512/VT.getScalarSizeInBits();
- MVT WideDataVT = MVT::getVectorVT(VT.getScalarType(), NumEltsInWideVec);
- MVT WideMaskVT = MVT::getVectorVT(MVT::i1, NumEltsInWideVec);
- DataToStore = ExtendToType(DataToStore, WideDataVT, DAG);
- Mask = ExtendToType(Mask, WideMaskVT, DAG, true);
- return DAG.getMaskedStore(N->getChain(), dl, DataToStore, N->getBasePtr(),
- Mask, N->getMemoryVT(), N->getMemOperand(),
- N->isTruncatingStore());
- }
- return Op;
+//igorb
+ assert(Subtarget.hasAVX512() && !Subtarget.hasVLX() && !VT.is512BitVector() &&
----------------
remove this comment
Repository:
rL LLVM
http://reviews.llvm.org/D17913
More information about the llvm-commits
mailing list