ir_to_mesa: Propagate initial values in _mesa_associate_uniform_storage

The linker may have set initial values for uniforms.  Propagate these
values to the driver's backing storage when it is first associated.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
This commit is contained in:
Ian Romanick
2012-04-09 11:19:24 -07:00
parent 76027f5b5c
commit c343b980d6

View File

@@ -2526,6 +2526,15 @@ _mesa_associate_uniform_storage(struct gl_context *ctx,
4 * sizeof(float),
format,
&params->ParameterValues[i]);
/* After attaching the driver's storage to the uniform, propagate any
* data from the linker's backing store. This will cause values from
* initializers in the source code to be copied over.
*/
_mesa_propagate_uniforms_to_driver_storage(storage,
0,
MAX2(1, storage->array_elements));
last_location = location;
}
}