mesa/cs: Implement MAX_COMPUTE_WORK_GROUP_INVOCATIONS constant.
Reviewed-by: Matt Turner <mattst88@gmail.com> v2: Use CONTEXT_INT rather than CONTEXT_ENUM. Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
This commit is contained in:
@@ -53,6 +53,7 @@ initialize_context(struct gl_context *ctx, gl_api api)
|
||||
ctx->Const.MaxComputeWorkGroupSize[0] = 1024;
|
||||
ctx->Const.MaxComputeWorkGroupSize[1] = 1024;
|
||||
ctx->Const.MaxComputeWorkGroupSize[2] = 64;
|
||||
ctx->Const.MaxComputeWorkGroupInvocations = 1024;
|
||||
ctx->Const.Program[MESA_SHADER_COMPUTE].MaxTextureImageUnits = 16;
|
||||
ctx->Const.Program[MESA_SHADER_COMPUTE].MaxUniformComponents = 1024;
|
||||
ctx->Const.Program[MESA_SHADER_COMPUTE].MaxInputComponents = 0; /* not used */
|
||||
|
@@ -144,6 +144,7 @@ void initialize_context_to_defaults(struct gl_context *ctx, gl_api api)
|
||||
ctx->Const.MaxComputeWorkGroupSize[0] = 1024;
|
||||
ctx->Const.MaxComputeWorkGroupSize[1] = 1024;
|
||||
ctx->Const.MaxComputeWorkGroupSize[2] = 64;
|
||||
ctx->Const.MaxComputeWorkGroupInvocations = 1024;
|
||||
ctx->Const.Program[MESA_SHADER_COMPUTE].MaxTextureImageUnits = 16;
|
||||
ctx->Const.Program[MESA_SHADER_COMPUTE].MaxUniformComponents = 1024;
|
||||
ctx->Const.Program[MESA_SHADER_COMPUTE].MaxInputComponents = 0; /* not used */
|
||||
|
@@ -705,6 +705,7 @@ _mesa_init_constants(struct gl_context *ctx)
|
||||
ctx->Const.MaxComputeWorkGroupSize[0] = 1024;
|
||||
ctx->Const.MaxComputeWorkGroupSize[1] = 1024;
|
||||
ctx->Const.MaxComputeWorkGroupSize[2] = 64;
|
||||
ctx->Const.MaxComputeWorkGroupInvocations = 1024;
|
||||
}
|
||||
|
||||
|
||||
|
@@ -390,6 +390,7 @@ EXTRA_EXT(ARB_shader_atomic_counters);
|
||||
EXTRA_EXT(ARB_draw_indirect);
|
||||
EXTRA_EXT(ARB_shader_image_load_store);
|
||||
EXTRA_EXT(ARB_viewport_array);
|
||||
EXTRA_EXT(ARB_compute_shader);
|
||||
|
||||
static const int
|
||||
extra_ARB_color_buffer_float_or_glcore[] = {
|
||||
|
@@ -751,6 +751,9 @@ descriptor=[
|
||||
[ "MAX_GEOMETRY_IMAGE_UNIFORMS", "CONTEXT_INT(Const.Program[MESA_SHADER_GEOMETRY].MaxImageUniforms), extra_ARB_shader_image_load_store_and_geometry_shader"],
|
||||
[ "MAX_FRAGMENT_IMAGE_UNIFORMS", "CONTEXT_INT(Const.Program[MESA_SHADER_FRAGMENT].MaxImageUniforms), extra_ARB_shader_image_load_store"],
|
||||
[ "MAX_COMBINED_IMAGE_UNIFORMS", "CONTEXT_INT(Const.MaxCombinedImageUniforms), extra_ARB_shader_image_load_store"],
|
||||
|
||||
# GL_ARB_compute_shader
|
||||
[ "MAX_COMPUTE_WORK_GROUP_INVOCATIONS", "CONTEXT_INT(Const.MaxComputeWorkGroupInvocations), extra_ARB_compute_shader" ],
|
||||
]},
|
||||
|
||||
# Enums restricted to OpenGL Core profile
|
||||
|
@@ -3381,6 +3381,7 @@ struct gl_constants
|
||||
|
||||
/** GL_ARB_compute_shader */
|
||||
GLuint MaxComputeWorkGroupSize[3]; /* Array of x, y, z dimensions */
|
||||
GLuint MaxComputeWorkGroupInvocations;
|
||||
};
|
||||
|
||||
|
||||
|
Reference in New Issue
Block a user