[llvm] r344875 - Revert r344873 "foo"

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Sun Oct 21 14:11:19 PDT 2018


Accidental commit. Reverted in r344875

~Craig


On Sun, Oct 21, 2018 at 2:10 PM Craig Topper via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: ctopper
> Date: Sun Oct 21 14:08:37 2018
> New Revision: 344875
>
> URL: http://llvm.org/viewvc/llvm-project?rev=344875&view=rev
> Log:
> Revert r344873 "foo"
>
> Rebase gone wrong left this in my tree.
>
> Modified:
>     llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
>     llvm/trunk/lib/Target/X86/X86MCInstLower.cpp
>     llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp
>     llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.h
>
> Modified: llvm/trunk/lib/Target/X86/X86ISelLowering.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ISelLowering.cpp?rev=344875&r1=344874&r2=344875&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ISelLowering.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86ISelLowering.cpp Sun Oct 21 14:08:37 2018
> @@ -6046,7 +6046,7 @@ static bool getTargetShuffleMask(SDNode
>        break;
>      }
>      if (auto *C = getTargetConstantFromNode(MaskNode)) {
> -      DecodeVPERMILPMask(C, MaskEltSize, VT.getSizeInBits(), Mask);
> +      DecodeVPERMILPMask(C, MaskEltSize, Mask);
>        break;
>      }
>      return false;
> @@ -6063,7 +6063,7 @@ static bool getTargetShuffleMask(SDNode
>        break;
>      }
>      if (auto *C = getTargetConstantFromNode(MaskNode)) {
> -      DecodePSHUFBMask(C, VT.getSizeInBits(), Mask);
> +      DecodePSHUFBMask(C, Mask);
>        break;
>      }
>      return false;
> @@ -6128,7 +6128,7 @@ static bool getTargetShuffleMask(SDNode
>          break;
>        }
>        if (auto *C = getTargetConstantFromNode(MaskNode)) {
> -        DecodeVPERMIL2PMask(C, CtrlImm, MaskEltSize, VT.getSizeInBits(),
> Mask);
> +        DecodeVPERMIL2PMask(C, CtrlImm, MaskEltSize, Mask);
>          break;
>        }
>      }
> @@ -6145,7 +6145,7 @@ static bool getTargetShuffleMask(SDNode
>        break;
>      }
>      if (auto *C = getTargetConstantFromNode(MaskNode)) {
> -      DecodeVPPERMMask(C, VT.getSizeInBits(), Mask);
> +      DecodeVPPERMMask(C, Mask);
>        break;
>      }
>      return false;
> @@ -6163,7 +6163,7 @@ static bool getTargetShuffleMask(SDNode
>        break;
>      }
>      if (auto *C = getTargetConstantFromNode(MaskNode)) {
> -      DecodeVPERMVMask(C, MaskEltSize, VT.getSizeInBits(), Mask);
> +      DecodeVPERMVMask(C, MaskEltSize, Mask);
>        break;
>      }
>      return false;
> @@ -6178,7 +6178,7 @@ static bool getTargetShuffleMask(SDNode
>      SDValue MaskNode = N->getOperand(1);
>      unsigned MaskEltSize = VT.getScalarSizeInBits();
>      if (auto *C = getTargetConstantFromNode(MaskNode)) {
> -      DecodeVPERMV3Mask(C, MaskEltSize, VT.getSizeInBits(), Mask);
> +      DecodeVPERMV3Mask(C, MaskEltSize, Mask);
>        break;
>      }
>      return false;
>
> Modified: llvm/trunk/lib/Target/X86/X86MCInstLower.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86MCInstLower.cpp?rev=344875&r1=344874&r2=344875&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86MCInstLower.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86MCInstLower.cpp Sun Oct 21 14:08:37 2018
> @@ -1594,18 +1594,6 @@ void X86AsmPrinter::EmitSEHInstruction(c
>    }
>  }
>
> -static unsigned getRegisterWidth(const MCOperandInfo &Info) {
> -  if (Info.RegClass == X86::VR128RegClassID ||
> -      Info.RegClass == X86::VR128XRegClassID)
> -    return 128;
> -  if (Info.RegClass == X86::VR256RegClassID ||
> -      Info.RegClass == X86::VR256XRegClassID)
> -    return 256;
> -  if (Info.RegClass == X86::VR512RegClassID)
> -    return 512;
> -  llvm_unreachable("Unknown register class!");
> -}
> -
>  void X86AsmPrinter::EmitInstruction(const MachineInstr *MI) {
>    X86MCInstLower MCInstLowering(*MF, *this);
>    const X86RegisterInfo *RI =
> @@ -1891,9 +1879,8 @@ void X86AsmPrinter::EmitInstruction(cons
>
>      const MachineOperand &MaskOp = MI->getOperand(MaskIdx);
>      if (auto *C = getConstantFromPool(*MI, MaskOp)) {
> -      unsigned Width = getRegisterWidth(MI->getDesc().OpInfo[0]);
>        SmallVector<int, 64> Mask;
> -      DecodePSHUFBMask(C, Width, Mask);
> +      DecodePSHUFBMask(C, Mask);
>        if (!Mask.empty())
>          OutStreamer->AddComment(getShuffleComment(MI, SrcIdx, SrcIdx,
> Mask),
>                                  !EnablePrintSchedInfo);
> @@ -1964,9 +1951,8 @@ void X86AsmPrinter::EmitInstruction(cons
>
>      const MachineOperand &MaskOp = MI->getOperand(MaskIdx);
>      if (auto *C = getConstantFromPool(*MI, MaskOp)) {
> -      unsigned Width = getRegisterWidth(MI->getDesc().OpInfo[0]);
>        SmallVector<int, 16> Mask;
> -      DecodeVPERMILPMask(C, ElSize, Width, Mask);
> +      DecodeVPERMILPMask(C, ElSize, Mask);
>        if (!Mask.empty())
>          OutStreamer->AddComment(getShuffleComment(MI, SrcIdx, SrcIdx,
> Mask),
>                                  !EnablePrintSchedInfo);
> @@ -1996,9 +1982,8 @@ void X86AsmPrinter::EmitInstruction(cons
>
>      const MachineOperand &MaskOp = MI->getOperand(6);
>      if (auto *C = getConstantFromPool(*MI, MaskOp)) {
> -      unsigned Width = getRegisterWidth(MI->getDesc().OpInfo[0]);
>        SmallVector<int, 16> Mask;
> -      DecodeVPERMIL2PMask(C, (unsigned)CtrlOp.getImm(), ElSize, Width,
> Mask);
> +      DecodeVPERMIL2PMask(C, (unsigned)CtrlOp.getImm(), ElSize, Mask);
>        if (!Mask.empty())
>          OutStreamer->AddComment(getShuffleComment(MI, 1, 2, Mask),
>                                  !EnablePrintSchedInfo);
> @@ -2014,9 +1999,8 @@ void X86AsmPrinter::EmitInstruction(cons
>
>      const MachineOperand &MaskOp = MI->getOperand(6);
>      if (auto *C = getConstantFromPool(*MI, MaskOp)) {
> -      unsigned Width = getRegisterWidth(MI->getDesc().OpInfo[0]);
>        SmallVector<int, 16> Mask;
> -      DecodeVPPERMMask(C, Width, Mask);
> +      DecodeVPPERMMask(C, Mask);
>        if (!Mask.empty())
>          OutStreamer->AddComment(getShuffleComment(MI, 1, 2, Mask),
>                                  !EnablePrintSchedInfo);
>
> Modified: llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp?rev=344875&r1=344874&r2=344875&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp (original)
> +++ llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp Sun Oct 21
> 14:08:37 2018
> @@ -112,10 +112,11 @@ static bool extractConstantMask(const Co
>    return true;
>  }
>
> -void DecodePSHUFBMask(const Constant *C, unsigned Width,
> -                      SmallVectorImpl<int> &ShuffleMask) {
> -  assert((Width == 128 || Width == 256 || Width == 512) &&
> -         C->getType()->getPrimitiveSizeInBits() >= Width &&
> +void DecodePSHUFBMask(const Constant *C, SmallVectorImpl<int>
> &ShuffleMask) {
> +  Type *MaskTy = C->getType();
> +  unsigned MaskTySize = MaskTy->getPrimitiveSizeInBits();
> +  (void)MaskTySize;
> +  assert((MaskTySize == 128 || MaskTySize == 256 || MaskTySize == 512) &&
>           "Unexpected vector size.");
>
>    // The shuffle mask requires a byte vector.
> @@ -124,7 +125,7 @@ void DecodePSHUFBMask(const Constant *C,
>    if (!extractConstantMask(C, 8, UndefElts, RawMask))
>      return;
>
> -  unsigned NumElts = Width / 8;
> +  unsigned NumElts = RawMask.size();
>    assert((NumElts == 16 || NumElts == 32 || NumElts == 64) &&
>           "Unexpected number of vector elements.");
>
> @@ -150,10 +151,12 @@ void DecodePSHUFBMask(const Constant *C,
>    }
>  }
>
> -void DecodeVPERMILPMask(const Constant *C, unsigned ElSize, unsigned
> Width,
> +void DecodeVPERMILPMask(const Constant *C, unsigned ElSize,
>                          SmallVectorImpl<int> &ShuffleMask) {
> -  assert((Width == 128 || Width == 256 || Width == 512) &&
> -         C->getType()->getPrimitiveSizeInBits() >= Width &&
> +  Type *MaskTy = C->getType();
> +  unsigned MaskTySize = MaskTy->getPrimitiveSizeInBits();
> +  (void)MaskTySize;
> +  assert((MaskTySize == 128 || MaskTySize == 256 || MaskTySize == 512) &&
>           "Unexpected vector size.");
>    assert((ElSize == 32 || ElSize == 64) && "Unexpected vector element
> size.");
>
> @@ -163,7 +166,7 @@ void DecodeVPERMILPMask(const Constant *
>    if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
>      return;
>
> -  unsigned NumElts = Width / ElSize;
> +  unsigned NumElts = RawMask.size();
>    unsigned NumEltsPerLane = 128 / ElSize;
>    assert((NumElts == 2 || NumElts == 4 || NumElts == 8 || NumElts == 16)
> &&
>           "Unexpected number of vector elements.");
> @@ -186,13 +189,11 @@ void DecodeVPERMILPMask(const Constant *
>  }
>
>  void DecodeVPERMIL2PMask(const Constant *C, unsigned M2Z, unsigned ElSize,
> -                         unsigned Width,
>                           SmallVectorImpl<int> &ShuffleMask) {
>    Type *MaskTy = C->getType();
>    unsigned MaskTySize = MaskTy->getPrimitiveSizeInBits();
>    (void)MaskTySize;
> -  assert((MaskTySize == 128 || MaskTySize == 256) &&
> -         Width >= MaskTySize && "Unexpected vector size.");
> +  assert((MaskTySize == 128 || MaskTySize == 256) && "Unexpected vector
> size.");
>
>    // The shuffle mask requires elements the same size as the target.
>    APInt UndefElts;
> @@ -200,7 +201,7 @@ void DecodeVPERMIL2PMask(const Constant
>    if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
>      return;
>
> -  unsigned NumElts = Width / ElSize;
> +  unsigned NumElts = RawMask.size();
>    unsigned NumEltsPerLane = 128 / ElSize;
>    assert((NumElts == 2 || NumElts == 4 || NumElts == 8) &&
>           "Unexpected number of vector elements.");
> @@ -241,12 +242,9 @@ void DecodeVPERMIL2PMask(const Constant
>    }
>  }
>
> -void DecodeVPPERMMask(const Constant *C, unsigned Width,
> -                      SmallVectorImpl<int> &ShuffleMask) {
> -  Type *MaskTy = C->getType();
> -  unsigned MaskTySize = MaskTy->getPrimitiveSizeInBits();
> -  (void)MaskTySize;
> -  assert(Width == 128 && Width >= MaskTySize && "Unexpected vector
> size.");
> +void DecodeVPPERMMask(const Constant *C, SmallVectorImpl<int>
> &ShuffleMask) {
> +  assert(C->getType()->getPrimitiveSizeInBits() == 128 &&
> +         "Unexpected vector size.");
>
>    // The shuffle mask requires a byte vector.
>    APInt UndefElts;
> @@ -254,7 +252,7 @@ void DecodeVPPERMMask(const Constant *C,
>    if (!extractConstantMask(C, 8, UndefElts, RawMask))
>      return;
>
> -  unsigned NumElts = Width / 8;
> +  unsigned NumElts = RawMask.size();
>    assert(NumElts == 16 && "Unexpected number of vector elements.");
>
>    for (unsigned i = 0; i != NumElts; ++i) {
> @@ -293,10 +291,12 @@ void DecodeVPPERMMask(const Constant *C,
>    }
>  }
>
> -void DecodeVPERMVMask(const Constant *C, unsigned ElSize, unsigned Width,
> +void DecodeVPERMVMask(const Constant *C, unsigned ElSize,
>                        SmallVectorImpl<int> &ShuffleMask) {
> -  assert((Width == 128 || Width == 256 || Width == 512) &&
> -         C->getType()->getPrimitiveSizeInBits() >= Width &&
> +  Type *MaskTy = C->getType();
> +  unsigned MaskTySize = MaskTy->getPrimitiveSizeInBits();
> +  (void)MaskTySize;
> +  assert((MaskTySize == 128 || MaskTySize == 256 || MaskTySize == 512) &&
>           "Unexpected vector size.");
>    assert((ElSize == 8 || ElSize == 16 || ElSize == 32 || ElSize == 64) &&
>           "Unexpected vector element size.");
> @@ -307,7 +307,7 @@ void DecodeVPERMVMask(const Constant *C,
>    if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
>      return;
>
> -  unsigned NumElts = Width / ElSize;
> +  unsigned NumElts = RawMask.size();
>
>    for (unsigned i = 0; i != NumElts; ++i) {
>      if (UndefElts[i]) {
> @@ -319,10 +319,12 @@ void DecodeVPERMVMask(const Constant *C,
>    }
>  }
>
> -void DecodeVPERMV3Mask(const Constant *C, unsigned ElSize, unsigned Width,
> +void DecodeVPERMV3Mask(const Constant *C, unsigned ElSize,
>                         SmallVectorImpl<int> &ShuffleMask) {
> -  assert((Width == 128 || Width == 256 || Width == 512) &&
> -         C->getType()->getPrimitiveSizeInBits() >= Width &&
> +  Type *MaskTy = C->getType();
> +  unsigned MaskTySize = MaskTy->getPrimitiveSizeInBits();
> +  (void)MaskTySize;
> +  assert((MaskTySize == 128 || MaskTySize == 256 || MaskTySize == 512) &&
>           "Unexpected vector size.");
>    assert((ElSize == 8 || ElSize == 16 || ElSize == 32 || ElSize == 64) &&
>           "Unexpected vector element size.");
> @@ -333,7 +335,7 @@ void DecodeVPERMV3Mask(const Constant *C
>    if (!extractConstantMask(C, ElSize, UndefElts, RawMask))
>      return;
>
> -  unsigned NumElts = Width / ElSize;
> +  unsigned NumElts = RawMask.size();
>
>    for (unsigned i = 0; i != NumElts; ++i) {
>      if (UndefElts[i]) {
>
> Modified: llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.h?rev=344875&r1=344874&r2=344875&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.h (original)
> +++ llvm/trunk/lib/Target/X86/X86ShuffleDecodeConstantPool.h Sun Oct 21
> 14:08:37 2018
> @@ -26,28 +26,25 @@ class Constant;
>  class MVT;
>
>  /// Decode a PSHUFB mask from an IR-level vector constant.
> -void DecodePSHUFBMask(const Constant *C, unsigned Width,
> -                      SmallVectorImpl<int> &ShuffleMask);
> +void DecodePSHUFBMask(const Constant *C, SmallVectorImpl<int>
> &ShuffleMask);
>
>  /// Decode a VPERMILP variable mask from an IR-level vector constant.
> -void DecodeVPERMILPMask(const Constant *C, unsigned ElSize, unsigned
> Width,
> +void DecodeVPERMILPMask(const Constant *C, unsigned ElSize,
>                          SmallVectorImpl<int> &ShuffleMask);
>
>  /// Decode a VPERMILP2 variable mask from an IR-level vector constant.
>  void DecodeVPERMIL2PMask(const Constant *C, unsigned MatchImm, unsigned
> ElSize,
> -                         unsigned Width,
>                           SmallVectorImpl<int> &ShuffleMask);
>
>  /// Decode a VPPERM variable mask from an IR-level vector constant.
> -void DecodeVPPERMMask(const Constant *C, unsigned Width,
> -                      SmallVectorImpl<int> &ShuffleMask);
> +void DecodeVPPERMMask(const Constant *C, SmallVectorImpl<int>
> &ShuffleMask);
>
>  /// Decode a VPERM W/D/Q/PS/PD mask from an IR-level vector constant.
> -void DecodeVPERMVMask(const Constant *C, unsigned ElSize, unsigned Width,
> +void DecodeVPERMVMask(const Constant *C, unsigned ElSize,
>                        SmallVectorImpl<int> &ShuffleMask);
>
>  /// Decode a VPERMT2 W/D/Q/PS/PD mask from an IR-level vector constant.
> -void DecodeVPERMV3Mask(const Constant *C, unsigned ElSize, unsigned Width,
> +void DecodeVPERMV3Mask(const Constant *C, unsigned ElSize,
>                         SmallVectorImpl<int> &ShuffleMask);
>
>  } // llvm namespace
>
>
> _______________________________________________
> 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/20181021/14a31dbd/attachment.html>


More information about the llvm-commits mailing list