Fix packusdw SSE2 fallback.
Bug swiftshader:20
Change-Id: I81ad267d450713ffe2a5a84e1d7f7f140b515c85
Reviewed-on: https://swiftshader-review.googlesource.com/8454
Reviewed-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
Tested-by: Nicolas Capens <capn@google.com>
diff --git a/src/Reactor/SubzeroReactor.cpp b/src/Reactor/SubzeroReactor.cpp
index 77272f3d..0a78f6e 100644
--- a/src/Reactor/SubzeroReactor.cpp
+++ b/src/Reactor/SubzeroReactor.cpp
@@ -3534,6 +3534,12 @@
return T(Type_v4i16);
}
+ Short8::Short8(short c)
+ {
+ int64_t constantVector[8] = {c, c, c, c, c, c, c, c};
+ storeValue(Nucleus::createConstantVector(constantVector, getType()));
+ }
+
Short8::Short8(short c0, short c1, short c2, short c3, short c4, short c5, short c6, short c7)
{
int64_t constantVector[8] = {c0, c1, c2, c3, c4, c5, c6, c7};
@@ -3600,6 +3606,12 @@
return T(Ice::IceType_v8i16);
}
+ UShort8::UShort8(unsigned short c)
+ {
+ int64_t constantVector[8] = {c, c, c, c, c, c, c, c};
+ storeValue(Nucleus::createConstantVector(constantVector, getType()));
+ }
+
UShort8::UShort8(unsigned short c0, unsigned short c1, unsigned short c2, unsigned short c3, unsigned short c4, unsigned short c5, unsigned short c6, unsigned short c7)
{
int64_t constantVector[8] = {c0, c1, c2, c3, c4, c5, c6, c7};