summaryrefslogtreecommitdiffstats
path: root/src/glsl
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2014-09-10 10:54:55 -0700
committerIan Romanick <ian.d.romanick@intel.com>2014-09-26 07:59:50 -0700
commit2ab71e1486e76722154b48faef8216ff8173fd30 (patch)
tree6de3eb2d64e37d7404f71cd3003e0ca531b05137 /src/glsl
parent5c75270c344815b15ef73e83421192fd7de35972 (diff)
glsl: Round struct size up to at least 16 bytes
Per rule #9, the size of the structure is vec4 aligned. The MAX2 in the loop ensures that sizes >= 16 bytes are vec4 aligned. The new MAX2 after the loop ensures that sizes < 16 bytes are vec4 aligned. Signed-off-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Jordan Justen <jordan.l.justen@intel.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82932 Cc: mesa-stable@lists.freedesktop.org
Diffstat (limited to 'src/glsl')
-rw-r--r--src/glsl/glsl_types.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glsl/glsl_types.cpp b/src/glsl/glsl_types.cpp
index 435b8667330..c11d86482be 100644
--- a/src/glsl/glsl_types.cpp
+++ b/src/glsl/glsl_types.cpp
@@ -979,7 +979,7 @@ glsl_type::std140_size(bool row_major) const
if (field_type->is_record() && (i + 1 < this->length))
size = glsl_align(size, 16);
}
- size = glsl_align(size, max_align);
+ size = glsl_align(size, MAX2(max_align, 16));
return size;
}