mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
[X86][AVX] lowerShuffleAsLanePermuteAndSHUFP - only set the demanded elements of the lane mask.
Fixes an cyclic dependency issue with an upcoming patch where getVectorShuffle canonicalizes masks with splat build vector sources.
This commit is contained in:
parent
f9acff790a
commit
14db9ee673
@ -14907,8 +14907,7 @@ static SDValue lowerShuffleAsLanePermuteAndSHUFP(const SDLoc &DL, MVT VT,
|
||||
continue;
|
||||
int LaneBase = i & ~1;
|
||||
auto &LaneMask = (i & 1) ? RHSMask : LHSMask;
|
||||
LaneMask[LaneBase + 0] = (M & ~1);
|
||||
LaneMask[LaneBase + 1] = (M & ~1) + 1;
|
||||
LaneMask[LaneBase + (M & 1)] = M;
|
||||
SHUFPMask |= (M & 1) << i;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user