| Index: src/gpu/vk/GrVkUniformHandler.cpp
|
| diff --git a/src/gpu/vk/GrVkUniformHandler.cpp b/src/gpu/vk/GrVkUniformHandler.cpp
|
| index fac955d8742d080e375972b6018b2631398c9d4a..4ffbcfe7d8a73d8f8319f7855e7af03ff852eb87 100644
|
| --- a/src/gpu/vk/GrVkUniformHandler.cpp
|
| +++ b/src/gpu/vk/GrVkUniformHandler.cpp
|
| @@ -16,7 +16,7 @@
|
| // aligned to 16 bytes (i.e. has mask of 0xF).
|
| uint32_t grsltype_to_alignment_mask(GrSLType type) {
|
| SkASSERT(GrSLTypeIsFloatType(type));
|
| - static const uint32_t kAlignments[kGrSLTypeCount] = {
|
| + static const uint32_t kAlignmentMask[] = {
|
| 0x0, // kVoid_GrSLType, should never return this
|
| 0x3, // kFloat_GrSLType
|
| 0x7, // kVec2f_GrSLType
|
| @@ -27,6 +27,11 @@ uint32_t grsltype_to_alignment_mask(GrSLType type) {
|
| 0xF, // kMat44f_GrSLType
|
| 0x0, // Sampler2D_GrSLType, should never return this
|
| 0x0, // SamplerExternal_GrSLType, should never return this
|
| + 0x0, // Sampler2DRect_GrSLType, should never return this
|
| + 0x0, // SamplerBuffer_GrSLType, should never return this
|
| + 0x0, // kBool_GrSLType
|
| + 0x7, // kInt_GrSLType
|
| + 0x7, // kUint_GrSLType
|
| };
|
| GR_STATIC_ASSERT(0 == kVoid_GrSLType);
|
| GR_STATIC_ASSERT(1 == kFloat_GrSLType);
|
| @@ -38,8 +43,13 @@ uint32_t grsltype_to_alignment_mask(GrSLType type) {
|
| GR_STATIC_ASSERT(7 == kMat44f_GrSLType);
|
| GR_STATIC_ASSERT(8 == kSampler2D_GrSLType);
|
| GR_STATIC_ASSERT(9 == kSamplerExternal_GrSLType);
|
| - GR_STATIC_ASSERT(SK_ARRAY_COUNT(kAlignments) == kGrSLTypeCount);
|
| - return kAlignments[type];
|
| + GR_STATIC_ASSERT(10 == kSampler2DRect_GrSLType);
|
| + GR_STATIC_ASSERT(11 == kSamplerBuffer_GrSLType);
|
| + GR_STATIC_ASSERT(12 == kBool_GrSLType);
|
| + GR_STATIC_ASSERT(13 == kInt_GrSLType);
|
| + GR_STATIC_ASSERT(14 == kUint_GrSLType);
|
| + GR_STATIC_ASSERT(SK_ARRAY_COUNT(kAlignmentMask) == kGrSLTypeCount);
|
| + return kAlignmentMask[type];
|
| }
|
|
|
| /** Returns the size in bytes taken up in vulkanbuffers for floating point GrSLTypes.
|
| @@ -59,9 +69,10 @@ static inline uint32_t grsltype_to_vk_size(GrSLType type) {
|
| 0, // kSampler2D_GrSLType
|
| 0, // kSamplerExternal_GrSLType
|
| 0, // kSampler2DRect_GrSLType
|
| - 0, // kBool_GrSLType
|
| - 0, // kInt_GrSLType
|
| - 0, // kUint_GrSLType
|
| + 0, // kSamplerBuffer_GrSLType
|
| + 1, // kBool_GrSLType
|
| + 4, // kInt_GrSLType
|
| + 4 // kUint_GrSLType
|
| };
|
| return kSizes[type];
|
|
|
| @@ -76,9 +87,10 @@ static inline uint32_t grsltype_to_vk_size(GrSLType type) {
|
| GR_STATIC_ASSERT(8 == kSampler2D_GrSLType);
|
| GR_STATIC_ASSERT(9 == kSamplerExternal_GrSLType);
|
| GR_STATIC_ASSERT(10 == kSampler2DRect_GrSLType);
|
| - GR_STATIC_ASSERT(11 == kBool_GrSLType);
|
| - GR_STATIC_ASSERT(12 == kInt_GrSLType);
|
| - GR_STATIC_ASSERT(13 == kUint_GrSLType);
|
| + GR_STATIC_ASSERT(11 == kSamplerBuffer_GrSLType);
|
| + GR_STATIC_ASSERT(12 == kBool_GrSLType);
|
| + GR_STATIC_ASSERT(13 == kInt_GrSLType);
|
| + GR_STATIC_ASSERT(14 == kUint_GrSLType);
|
| GR_STATIC_ASSERT(SK_ARRAY_COUNT(kSizes) == kGrSLTypeCount);
|
| }
|
|
|
|
|