aboutsummaryrefslogtreecommitdiffstats
path: root/src/mesa
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2016-11-22 23:31:08 +1100
committerTimothy Arceri <[email protected]>2017-01-23 14:48:04 +1100
commit79f07e87c9f197ca9e231bb2b78149ac6ff1f44b (patch)
treeb7773c16b77e9264e395cb11d24c6d032a5631d8 /src/mesa
parentb96bddae678d686dfd22deb40adb093ec4691f53 (diff)
mesa/glsl: set and get cs layouts to and from shader_info
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/mesa')
-rw-r--r--src/mesa/main/mtypes.h10
-rw-r--r--src/mesa/main/shaderapi.c6
-rw-r--r--src/mesa/main/shaderobj.c2
3 files changed, 2 insertions, 16 deletions
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 56ab614d312..e7a730d6ad9 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -2760,19 +2760,9 @@ struct gl_shader_program
*/
struct {
/**
- * If this shader contains a compute stage, size specified using
- * local_size_{x,y,z}. Otherwise undefined.
- */
- unsigned LocalSize[3];
- /**
* Size of shared variables accessed by the compute shader.
*/
unsigned SharedSize;
-
- /**
- * Whether a variable work group size has been specified.
- */
- bool LocalSizeVariable;
} Comp;
/** Data shared by gl_program and gl_shader_program */
diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c
index a550e6ff1ed..3313fa215b3 100644
--- a/src/mesa/main/shaderapi.c
+++ b/src/mesa/main/shaderapi.c
@@ -807,7 +807,8 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname,
return;
}
for (i = 0; i < 3; i++)
- params[i] = shProg->Comp.LocalSize[i];
+ params[i] = shProg->_LinkedShaders[MESA_SHADER_COMPUTE]->
+ Program->info.cs.local_size[i];
return;
}
case GL_PROGRAM_SEPARABLE:
@@ -2213,10 +2214,7 @@ _mesa_copy_linked_program_data(const struct gl_shader_program *src,
break;
}
case MESA_SHADER_COMPUTE: {
- for (int i = 0; i < 3; i++)
- dst->info.cs.local_size[i] = src->Comp.LocalSize[i];
dst->info.cs.shared_size = src->Comp.SharedSize;
- dst->info.cs.local_size_variable = src->Comp.LocalSizeVariable;
break;
}
default:
diff --git a/src/mesa/main/shaderobj.c b/src/mesa/main/shaderobj.c
index 4e514a3d09f..b41137fbce3 100644
--- a/src/mesa/main/shaderobj.c
+++ b/src/mesa/main/shaderobj.c
@@ -282,8 +282,6 @@ init_shader_program(struct gl_shader_program *prog)
prog->Geom.UsesEndPrimitive = false;
prog->Geom.UsesStreams = false;
- prog->Comp.LocalSizeVariable = false;
-
prog->TransformFeedback.BufferMode = GL_INTERLEAVED_ATTRIBS;
exec_list_make_empty(&prog->EmptyUniformLocations);