summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2013-06-28 19:39:28 -0700
committerIan Romanick <[email protected]>2014-05-02 07:20:08 -0700
commite608449d3e7dc86b90acfb31d9c948c57cf0e920 (patch)
treecec77348fae420be5729f8648c2eafa35cfa3840
parent0939d3d0974a579fa65b76ebc6074d61e11f03b0 (diff)
mesa/sso: Enable GL_ARB_separate_shader_objects by default
Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Eric Anholt <[email protected]>
-rw-r--r--src/glsl/glcpp/glcpp-parse.y4
-rw-r--r--src/glsl/glsl_parser_extras.cpp2
-rw-r--r--src/mesa/drivers/common/meta.c10
-rw-r--r--src/mesa/main/extensions.c2
-rw-r--r--src/mesa/main/get.c1
-rw-r--r--src/mesa/main/get_hash_params.py2
-rw-r--r--src/mesa/main/mtypes.h1
-rw-r--r--src/mesa/main/shaderapi.c6
8 files changed, 8 insertions, 20 deletions
diff --git a/src/glsl/glcpp/glcpp-parse.y b/src/glsl/glcpp/glcpp-parse.y
index f28d8531eb1..412d571e6eb 100644
--- a/src/glsl/glcpp/glcpp-parse.y
+++ b/src/glsl/glcpp/glcpp-parse.y
@@ -2069,6 +2069,7 @@ _glcpp_parser_handle_version_declaration(glcpp_parser_t *parser, intmax_t versio
}
} else {
add_builtin_define(parser, "GL_ARB_draw_buffers", 1);
+ add_builtin_define(parser, "GL_ARB_separate_shader_objects", 1);
add_builtin_define(parser, "GL_ARB_texture_rectangle", 1);
add_builtin_define(parser, "GL_AMD_shader_trinary_minmax", 1);
@@ -2134,9 +2135,6 @@ _glcpp_parser_handle_version_declaration(glcpp_parser_t *parser, intmax_t versio
if (extensions->ARB_texture_gather)
add_builtin_define(parser, "GL_ARB_texture_gather", 1);
- if (extensions->ARB_separate_shader_objects)
- add_builtin_define(parser, "GL_ARB_separate_shader_objects", 1);
-
if (extensions->ARB_shader_atomic_counters)
add_builtin_define(parser, "GL_ARB_shader_atomic_counters", 1);
diff --git a/src/glsl/glsl_parser_extras.cpp b/src/glsl/glsl_parser_extras.cpp
index 8f09cc7293a..7dc9c71fd50 100644
--- a/src/glsl/glsl_parser_extras.cpp
+++ b/src/glsl/glsl_parser_extras.cpp
@@ -514,7 +514,7 @@ static const _mesa_glsl_extension _mesa_glsl_supported_extensions[] = {
EXT(ARB_fragment_coord_conventions, true, false, ARB_fragment_coord_conventions),
EXT(ARB_texture_rectangle, true, false, dummy_true),
EXT(EXT_texture_array, true, false, EXT_texture_array),
- EXT(ARB_separate_shader_objects, true, false, ARB_separate_shader_objects),
+ EXT(ARB_separate_shader_objects, true, false, dummy_true),
EXT(ARB_shader_texture_lod, true, false, ARB_shader_texture_lod),
EXT(ARB_shader_stencil_export, true, false, ARB_shader_stencil_export),
EXT(AMD_conservative_depth, true, false, ARB_conservative_depth),
diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
index d3910597dea..d3ff87a3665 100644
--- a/src/mesa/drivers/common/meta.c
+++ b/src/mesa/drivers/common/meta.c
@@ -576,11 +576,10 @@ _mesa_meta_begin(struct gl_context *ctx, GLbitfield state)
_mesa_set_enable(ctx, GL_FRAGMENT_SHADER_ATI, GL_FALSE);
}
- if (ctx->Extensions.ARB_separate_shader_objects) {
- if (ctx->Pipeline.Current) {
- _mesa_reference_pipeline_object(ctx, &save->Pipeline,
- ctx->Pipeline.Current);
- _mesa_BindProgramPipeline(0);
+ if (ctx->Pipeline.Current) {
+ _mesa_reference_pipeline_object(ctx, &save->Pipeline,
+ ctx->Pipeline.Current);
+ _mesa_BindProgramPipeline(0);
}
/* Save the shader state from ctx->Shader (instead of ctx->_Shader) so
@@ -975,7 +974,6 @@ _mesa_meta_end(struct gl_context *ctx)
ctx->Pipeline.Default);
if (save->Pipeline) {
- assert(ctx->Extensions.ARB_separate_shader_objects);
_mesa_bind_pipeline(ctx, save->Pipeline);
_mesa_reference_pipeline_object(ctx, &save->Pipeline, NULL);
diff --git a/src/mesa/main/extensions.c b/src/mesa/main/extensions.c
index 941e38a9f79..e60d7b0d57c 100644
--- a/src/mesa/main/extensions.c
+++ b/src/mesa/main/extensions.c
@@ -128,7 +128,7 @@ static const struct extension extension_table[] = {
{ "GL_ARB_sample_shading", o(ARB_sample_shading), GL, 2009 },
{ "GL_ARB_sampler_objects", o(dummy_true), GL, 2009 },
{ "GL_ARB_seamless_cube_map", o(ARB_seamless_cube_map), GL, 2009 },
- { "GL_ARB_separate_shader_objects", o(ARB_separate_shader_objects), GL, 2010 },
+ { "GL_ARB_separate_shader_objects", o(dummy_true), GL, 2010 },
{ "GL_ARB_shader_atomic_counters", o(ARB_shader_atomic_counters), GL, 2011 },
{ "GL_ARB_shader_bit_encoding", o(ARB_shader_bit_encoding), GL, 2010 },
{ "GL_ARB_shader_image_load_store", o(ARB_shader_image_load_store), GL, 2011 },
diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
index fe35ff3ef8a..937d7aa67b4 100644
--- a/src/mesa/main/get.c
+++ b/src/mesa/main/get.c
@@ -387,7 +387,6 @@ EXTRA_EXT(ARB_texture_cube_map_array);
EXTRA_EXT(ARB_texture_buffer_range);
EXTRA_EXT(ARB_texture_multisample);
EXTRA_EXT(ARB_texture_gather);
-EXTRA_EXT(ARB_separate_shader_objects);
EXTRA_EXT(ARB_shader_atomic_counters);
EXTRA_EXT(ARB_draw_indirect);
EXTRA_EXT(ARB_shader_image_load_store);
diff --git a/src/mesa/main/get_hash_params.py b/src/mesa/main/get_hash_params.py
index 06d0bbacccf..1d565028ebb 100644
--- a/src/mesa/main/get_hash_params.py
+++ b/src/mesa/main/get_hash_params.py
@@ -727,7 +727,7 @@ descriptor=[
[ "MAX_PROGRAM_TEXTURE_GATHER_COMPONENTS_ARB", "CONTEXT_INT(Const.MaxProgramTextureGatherComponents), extra_ARB_texture_gather"],
# GL_ARB_separate_shader_objects
- [ "PROGRAM_PIPELINE_BINDING", "LOC_CUSTOM, TYPE_INT, GL_PROGRAM_PIPELINE_BINDING, extra_ARB_separate_shader_objects" ],
+ [ "PROGRAM_PIPELINE_BINDING", "LOC_CUSTOM, TYPE_INT, GL_PROGRAM_PIPELINE_BINDING, NO_EXTRA" ],
# GL_ARB_shader_atomic_counters
[ "ATOMIC_COUNTER_BUFFER_BINDING", "LOC_CUSTOM, TYPE_INT, 0, extra_ARB_shader_atomic_counters" ],
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index f31788aefab..b3fdf0662a1 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -3540,7 +3540,6 @@ struct gl_extensions
GLboolean ARB_point_sprite;
GLboolean ARB_sample_shading;
GLboolean ARB_seamless_cube_map;
- GLboolean ARB_separate_shader_objects;
GLboolean ARB_shader_atomic_counters;
GLboolean ARB_shader_bit_encoding;
GLboolean ARB_shader_image_load_store;
diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c
index 1c8e6b4cf5b..8368ec56abf 100644
--- a/src/mesa/main/shaderapi.c
+++ b/src/mesa/main/shaderapi.c
@@ -700,9 +700,6 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, GLint *param
return;
}
case GL_PROGRAM_SEPARABLE:
- if (!ctx->Extensions.ARB_separate_shader_objects)
- break;
-
*params = shProg->SeparateShader;
return;
default:
@@ -1777,9 +1774,6 @@ _mesa_ProgramParameteri(GLuint program, GLenum pname, GLint value)
return;
case GL_PROGRAM_SEPARABLE:
- if (!ctx->Extensions.ARB_separate_shader_objects)
- break;
-
/* Spec imply that the behavior is the same as ARB_get_program_binary
* Chapter 7.3 Program Objects
*/