diff options
Diffstat (limited to 'src/sksl/ir/SkSLSwizzle.h')
-rw-r--r-- | src/sksl/ir/SkSLSwizzle.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/sksl/ir/SkSLSwizzle.h b/src/sksl/ir/SkSLSwizzle.h index b90b78d916..e713a323b3 100644 --- a/src/sksl/ir/SkSLSwizzle.h +++ b/src/sksl/ir/SkSLSwizzle.h @@ -56,6 +56,12 @@ static const Type& get_type(const Context& context, Expression& value, size_t co case 3: return *context.fShort3_Type; case 4: return *context.fShort4_Type; } + } else if (base == *context.fByte_Type) { + switch (count) { + case 2: return *context.fByte2_Type; + case 3: return *context.fByte3_Type; + case 4: return *context.fByte4_Type; + } } else if (base == *context.fUInt_Type) { switch (count) { case 2: return *context.fUInt2_Type; @@ -68,6 +74,12 @@ static const Type& get_type(const Context& context, Expression& value, size_t co case 3: return *context.fUShort3_Type; case 4: return *context.fUShort4_Type; } + } else if (base == *context.fUByte_Type) { + switch (count) { + case 2: return *context.fUByte2_Type; + case 3: return *context.fUByte3_Type; + case 4: return *context.fUByte4_Type; + } } else if (base == *context.fBool_Type) { switch (count) { case 2: return *context.fBool2_Type; |