summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Iglesias Gonsalvez <siglesias@igalia.com>2015-06-09 09:16:33 +0200
committerFrancisco Jerez <currojerez@riseup.net>2015-06-10 15:03:56 +0300
commitf98d32935b1451ecc34dab68b9c263054928c6da (patch)
tree6d46d6c8fabe13d6c633e4150ad1e76bdff7c5ba
parent632011c7d389d71a6a1da17e7e06bcd41f101291 (diff)
i965: set ARB_shader_storage_buffer_object related constant valuesfor-samuel
Signed-off-by: Samuel Iglesias Gonsalvez <siglesias@igalia.com>
-rw-r--r--src/mesa/drivers/dri/i965/brw_context.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_context.c b/src/mesa/drivers/dri/i965/brw_context.c
index 5aae1090a0b..c1610d7f921 100644
--- a/src/mesa/drivers/dri/i965/brw_context.c
+++ b/src/mesa/drivers/dri/i965/brw_context.c
@@ -549,6 +549,17 @@ brw_initialize_context_constants(struct brw_context *brw)
ctx->Const.TextureBufferOffsetAlignment = 16;
ctx->Const.MaxTextureBufferSize = 128 * 1024 * 1024;
+ /* FIXME: Tessellation stages are not yet supported, so
+ * MaxShaderStorageBlocks is not set for them and
+ * MaxCombinedShaderStorageBlocks doesn't take them into account.
+ */
+ ctx->Const.Program[MESA_SHADER_FRAGMENT].MaxShaderStorageBlocks = 12;
+ ctx->Const.Program[MESA_SHADER_VERTEX].MaxShaderStorageBlocks = 12;
+ ctx->Const.Program[MESA_SHADER_GEOMETRY].MaxShaderStorageBlocks = 12;
+ ctx->Const.Program[MESA_SHADER_COMPUTE].MaxShaderStorageBlocks = 12;
+ ctx->Const.MaxCombinedShaderStorageBlocks = 12 * 3;
+ ctx->Const.MaxShaderStorageBufferBindings = 48;
+
if (brw->gen >= 6) {
ctx->Const.MaxVarying = 32;
ctx->Const.Program[MESA_SHADER_VERTEX].MaxOutputComponents = 128;