aboutsummaryrefslogtreecommitdiffstats
path: root/src/compiler/glsl/program.h
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2019-12-06 21:57:16 +1100
committerTimothy Arceri <[email protected]>2019-12-13 00:07:19 +0000
commita6aedc662ebbcac747475324abe3791ff67fc1a8 (patch)
treedadce9bb76192df75032944ced5098a32688740c /src/compiler/glsl/program.h
parent144f54e483d1e1b0cd865606fecdef002bb322b1 (diff)
st/glsl_to_nir: use nir based program resource list builder
Here we use the NIR based builder to add everything to the resource list execpt for SSO packed varyings. Since the details of those varyings get lost during packing we leave the special handing to the GLSL IR pass for now. In order to do this we add some bools to the build resource list functions. Using the NIR based resource list builder gets us a step closer to using a native NIR based linker. It should also be faster than the GLSL IR builder, one because the NIR optimisations should mean we add less entries due to better optimisations, and two because nir gives us better lists to work with and we don't need to walk the entire IR to find the resources. Ack-by: Alejandro PiƱeiro <[email protected]>
Diffstat (limited to 'src/compiler/glsl/program.h')
-rw-r--r--src/compiler/glsl/program.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/compiler/glsl/program.h b/src/compiler/glsl/program.h
index 9df42ddc1c4..0106e1dd6f3 100644
--- a/src/compiler/glsl/program.h
+++ b/src/compiler/glsl/program.h
@@ -46,7 +46,8 @@ link_shaders(struct gl_context *ctx, struct gl_shader_program *prog);
extern void
build_program_resource_list(struct gl_context *ctx,
- struct gl_shader_program *shProg);
+ struct gl_shader_program *shProg,
+ bool add_packed_varyings_only);
extern long
parse_program_resource_name(const GLchar *name,