diff --git a/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h b/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h --- a/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h +++ b/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.h @@ -38,14 +38,6 @@ void DecodeVPPERMMask(const Constant *C, unsigned Width, SmallVectorImpl &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, - SmallVectorImpl &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, - SmallVectorImpl &ShuffleMask); - } // llvm namespace #endif diff --git a/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp b/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp --- a/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp +++ b/llvm/lib/Target/X86/X86ShuffleDecodeConstantPool.cpp @@ -293,55 +293,4 @@ } } -void DecodeVPERMVMask(const Constant *C, unsigned ElSize, unsigned Width, - SmallVectorImpl &ShuffleMask) { - assert((Width == 128 || Width == 256 || Width == 512) && - C->getType()->getPrimitiveSizeInBits() >= Width && - "Unexpected vector size."); - assert((ElSize == 8 || ElSize == 16 || ElSize == 32 || ElSize == 64) && - "Unexpected vector element size."); - - // The shuffle mask requires elements the same size as the target. - APInt UndefElts; - SmallVector RawMask; - if (!extractConstantMask(C, ElSize, UndefElts, RawMask)) - return; - - unsigned NumElts = Width / ElSize; - - for (unsigned i = 0; i != NumElts; ++i) { - if (UndefElts[i]) { - ShuffleMask.push_back(SM_SentinelUndef); - continue; - } - int Index = RawMask[i] & (NumElts - 1); - ShuffleMask.push_back(Index); - } -} - -void DecodeVPERMV3Mask(const Constant *C, unsigned ElSize, unsigned Width, - SmallVectorImpl &ShuffleMask) { - assert((Width == 128 || Width == 256 || Width == 512) && - C->getType()->getPrimitiveSizeInBits() >= Width && - "Unexpected vector size."); - assert((ElSize == 8 || ElSize == 16 || ElSize == 32 || ElSize == 64) && - "Unexpected vector element size."); - - // The shuffle mask requires elements the same size as the target. - APInt UndefElts; - SmallVector RawMask; - if (!extractConstantMask(C, ElSize, UndefElts, RawMask)) - return; - - unsigned NumElts = Width / ElSize; - - for (unsigned i = 0; i != NumElts; ++i) { - if (UndefElts[i]) { - ShuffleMask.push_back(SM_SentinelUndef); - continue; - } - int Index = RawMask[i] & (NumElts*2 - 1); - ShuffleMask.push_back(Index); - } -} } // namespace llvm