summaryrefslogtreecommitdiffstats
path: root/src/mesa/program/ir_to_mesa.cpp
diff options
context:
space:
mode:
authorPaul Berry <stereotype441@gmail.com>2013-03-23 10:51:53 -0700
committerPaul Berry <stereotype441@gmail.com>2013-08-01 20:21:26 -0700
commit13022c9c5f3cb67c76ed76eae9cd8a49355874a5 (patch)
tree8ff6407c6b2766ac0c5b462e9120f6001b5a333e /src/mesa/program/ir_to_mesa.cpp
parent2548092ad80156a407281a124f833a6a93fbf2f3 (diff)
downloadexternal_mesa3d-13022c9c5f3cb67c76ed76eae9cd8a49355874a5.zip
external_mesa3d-13022c9c5f3cb67c76ed76eae9cd8a49355874a5.tar.gz
external_mesa3d-13022c9c5f3cb67c76ed76eae9cd8a49355874a5.tar.bz2
mesa: Refactor copying of linked program data.
This patch creates a single function to copy the the UsesClipDistance flag from gl_shader_program.Vert to gl_vertex_program. Previously this logic was duplicated in the i965-specific function brw_link_shader() and the core mesa function _mesa_ir_link_shader(). This logic will have to be expanded to support geometry shaders, and I don't want to have to update it in two separate places. Reviewed-by: Ian Romanick <ian.d.romanick@intel.com> Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Diffstat (limited to 'src/mesa/program/ir_to_mesa.cpp')
-rw-r--r--src/mesa/program/ir_to_mesa.cpp5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp
index ae78aca..f612f41 100644
--- a/src/mesa/program/ir_to_mesa.cpp
+++ b/src/mesa/program/ir_to_mesa.cpp
@@ -3087,10 +3087,7 @@ _mesa_ir_link_shader(struct gl_context *ctx, struct gl_shader_program *prog)
linked_prog = get_mesa_program(ctx, prog, prog->_LinkedShaders[i]);
if (linked_prog) {
- if (i == MESA_SHADER_VERTEX) {
- ((struct gl_vertex_program *)linked_prog)->UsesClipDistance
- = prog->Vert.UsesClipDistance;
- }
+ _mesa_copy_linked_program_data((gl_shader_type) i, prog, linked_prog);
_mesa_reference_program(ctx, &prog->_LinkedShaders[i]->Program,
linked_prog);