Commit a3688eaf by Nicolas Capens Committed by Nicolas Capens

Fix two-vector unpack case.

Bug swiftshader:15 Change-Id: I351268b44491091c271d6c7c5b644cd21ffb623b Reviewed-on: https://chromium-review.googlesource.com/403409Reviewed-by: 's avatarJim Stichnoth <stichnot@chromium.org> Tested-by: 's avatarNicolas Capens <nicolascapens@google.com>
parent 61593fb9
...@@ -6144,8 +6144,9 @@ void TargetX86Base<TraitsType>::lowerShuffleVector( ...@@ -6144,8 +6144,9 @@ void TargetX86Base<TraitsType>::lowerShuffleVector(
if (Instr->indexesAre(0, 8, 1, 9, 2, 10, 3, 11)) { if (Instr->indexesAre(0, 8, 1, 9, 2, 10, 3, 11)) {
auto *T = makeReg(DestTy); auto *T = makeReg(DestTy);
auto *Src0RM = legalize(Src0, Legal_Reg | Legal_Mem); auto *Src0RM = legalize(Src0, Legal_Reg | Legal_Mem);
auto *Src1RM = legalize(Src1, Legal_Reg | Legal_Mem);
_movp(T, Src0RM); _movp(T, Src0RM);
_punpckl(T, Src0RM); _punpckl(T, Src1RM);
_movp(Dest, T); _movp(Dest, T);
return; return;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment