diff options
author | marha <marha@users.sourceforge.net> | 2012-07-31 10:00:43 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2012-07-31 10:00:43 +0200 |
commit | bd27b3d008b0abf9ae2edcb127302728808533e4 (patch) | |
tree | a73a74f04a31a0f44465ed82bcf58b180ca53dbd /mesalib/src/glsl/opt_dead_code.cpp | |
parent | 2ff5448bcca8cba4b62026d5493cb08aaf2838d8 (diff) | |
download | vcxsrv-bd27b3d008b0abf9ae2edcb127302728808533e4.tar.gz vcxsrv-bd27b3d008b0abf9ae2edcb127302728808533e4.tar.bz2 vcxsrv-bd27b3d008b0abf9ae2edcb127302728808533e4.zip |
fontconfig libXext mesa xserver pixman git update 31 Jul 2012
Diffstat (limited to 'mesalib/src/glsl/opt_dead_code.cpp')
-rw-r--r-- | mesalib/src/glsl/opt_dead_code.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/mesalib/src/glsl/opt_dead_code.cpp b/mesalib/src/glsl/opt_dead_code.cpp index 0578f1737..de8475f95 100644 --- a/mesalib/src/glsl/opt_dead_code.cpp +++ b/mesalib/src/glsl/opt_dead_code.cpp @@ -95,9 +95,15 @@ do_dead_code(exec_list *instructions, bool uniform_locations_assigned) /* uniform initializers are precious, and could get used by another * stage. Also, once uniform locations have been assigned, the * declaration cannot be deleted. + * + * Also, GL_ARB_uniform_buffer_object says that std140 + * uniforms will not be eliminated. Since we always do + * std140, just don't eliminate uniforms in UBOs. */ if (entry->var->mode == ir_var_uniform && - (uniform_locations_assigned || entry->var->constant_value)) + (uniform_locations_assigned || + entry->var->constant_value || + entry->var->uniform_block != -1)) continue; entry->var->remove(); |