<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, May 30, 2016 at 9:50 AM, Emil Velikov <span dir="ltr"><<a href="mailto:emil.l.velikov@gmail.com" target="_blank">emil.l.velikov@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 29 May 2016 at 07:01, Jordan Justen <<a href="mailto:jordan.l.justen@intel.com">jordan.l.justen@intel.com</a>> wrote:<br>
> It appears we were over-allocating these arrays.<br>
><br>
> Previously we would use nir->num_uniforms directly for scalar<br>
> programs, and multiply it by 4 for vec4 programs.<br>
><br>
> Instead we should have been dividing by 4 in both cases to convert<br>
> from bytes to a gl_constant_value count. The size of gl_constant_value<br>
> is 4 bytes.<br>
><br>
> Signed-off-by: Jordan Justen <<a href="mailto:jordan.l.justen@intel.com">jordan.l.justen@intel.com</a>><br>
> ---<br>
>  Jenkins results looked good with this change.<br>
><br>
>  src/mesa/drivers/dri/i965/brw_cs.c  | 2 +-<br>
>  src/mesa/drivers/dri/i965/brw_gs.c  | 4 +---<br>
>  src/mesa/drivers/dri/i965/brw_tcs.c | 4 +---<br>
>  src/mesa/drivers/dri/i965/brw_tes.c | 4 +---<br>
>  src/mesa/drivers/dri/i965/brw_vs.c  | 4 +---<br>
>  src/mesa/drivers/dri/i965/brw_wm.c  | 2 +-<br>
>  6 files changed, 6 insertions(+), 14 deletions(-)<br>
><br>
> diff --git a/src/mesa/drivers/dri/i965/brw_cs.c b/src/mesa/drivers/dri/i965/brw_cs.c<br>
> index 0ab9ebd..a9cbde9 100644<br>
> --- a/src/mesa/drivers/dri/i965/brw_cs.c<br>
> +++ b/src/mesa/drivers/dri/i965/brw_cs.c<br>
> @@ -91,7 +91,7 @@ brw_codegen_cs_prog(struct brw_context *brw,<br>
>      * prog_data associated with the compiled program, and which will be freed<br>
>      * by the state cache.<br>
>      */<br>
> -   int param_count = cp->program.Base.nir->num_uniforms;<br>
> +   int param_count = cp->program.Base.nir->num_uniforms / 4;<br>
><br>
</div></div>Shouldn't one use sizeof(union gl_constant_value) over the hardcoded 4 ?<br></blockquote><div><br></div><div>Yes and no.  The fact that gl_constant_value is 4 bytes is very tightly intertwined with the rest of the code.  if gl_constant_value ever became 8 bytes it's very questionable as to whether or not we would want this to change automatically.<br><br></div><div>--Jason<br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<span class="HOEnZb"><font color="#888888"><br>
-Emil<br>
</font></span><div class="HOEnZb"><div class="h5">_______________________________________________<br>
mesa-dev mailing list<br>
<a href="mailto:mesa-dev@lists.freedesktop.org">mesa-dev@lists.freedesktop.org</a><br>
<a href="https://lists.freedesktop.org/mailman/listinfo/mesa-dev" rel="noreferrer" target="_blank">https://lists.freedesktop.org/mailman/listinfo/mesa-dev</a><br>
</div></div></blockquote></div><br></div></div>