[Hexagon] Don't use garbage mask in HvxSelector::shuffp2

The function shuffp2 was breaking up a wide shuffle into a pair of
narrower ones, except that the narrower shuffle masks were actually
uninitialized.

llvm-svn: 324243
This commit is contained in:
Krzysztof Parzyszek 2018-02-05 15:46:41 +00:00
parent 5a95c47730
commit 67079be139
1 changed files with 2 additions and 0 deletions

View File

@ -1271,6 +1271,8 @@ OpRef HvxSelector::shuffp2(ShuffleMask SM, OpRef Va, OpRef Vb,
return shuffp1(ShuffleMask(PackedMask), P, Results);
SmallVector<int,256> MaskL(VecLen), MaskR(VecLen);
splitMask(SM.Mask, MaskL, MaskR);
OpRef L = shuffp1(ShuffleMask(MaskL), Va, Results);
OpRef R = shuffp1(ShuffleMask(MaskR), Vb, Results);
if (!L.isValid() || !R.isValid())