[llvm] r251780 - [X86] Remove assertions that check for valid scale values on scatter/gather intrinsics. Nothing upstream prevented illegal values from getting here.

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Mon Nov 2 08:37:27 PST 2015


On Sun, Nov 1, 2015 at 11:24 PM, Craig Topper via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: ctopper
> Date: Mon Nov  2 01:24:40 2015
> New Revision: 251780
>
> URL: http://llvm.org/viewvc/llvm-project?rev=251780&view=rev
> Log:
> [X86] Remove assertions that check for valid scale values on
> scatter/gather intrinsics. Nothing upstream prevented illegal values from
> getting here.
>

Any particular test case that was missing for this?


>
> Modified:
>     llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
>
> Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=251780&r1=251779&r2=251780&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Mon Nov  2 01:24:40 2015
> @@ -16652,10 +16652,6 @@ static SDValue getGatherNode(unsigned Op
>                                const X86Subtarget * Subtarget) {
>    SDLoc dl(Op);
>    auto *C = cast<ConstantSDNode>(ScaleOp);
> -  unsigned ScaleVal = C->getZExtValue();
> -  if (ScaleVal > 2 && ScaleVal != 4 && ScaleVal != 8)
> -    llvm_unreachable("Valid scale values are 1, 2, 4, 8");
> -
>    SDValue Scale = DAG.getTargetConstant(C->getZExtValue(), dl, MVT::i8);
>    MVT MaskVT = MVT::getVectorVT(MVT::i1,
>
> Index.getSimpleValueType().getVectorNumElements());
> @@ -16689,10 +16685,6 @@ static SDValue getScatterNode(unsigned O
>                                 SDValue Index, SDValue ScaleOp, SDValue
> Chain) {
>    SDLoc dl(Op);
>    auto *C = cast<ConstantSDNode>(ScaleOp);
> -  unsigned ScaleVal = C->getZExtValue();
> -  if (ScaleVal > 2 && ScaleVal != 4 && ScaleVal != 8)
> -    llvm_unreachable("Valid scale values are 1, 2, 4, 8");
> -
>    SDValue Scale = DAG.getTargetConstant(C->getZExtValue(), dl, MVT::i8);
>    SDValue Disp = DAG.getTargetConstant(0, dl, MVT::i32);
>    SDValue Segment = DAG.getRegister(0, MVT::i32);
>
>
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20151102/4d41b8d1/attachment.html>


More information about the llvm-commits mailing list