Hi all,

  I was taking a look in i965 taking a closer look at the upload to GPU of 
param and pull_param for vertex shaders. What I found was this:
   1) in vec4_visitor::move_uniform_array_access_to_pull_constants(), those 
uniforms that are relatively addressed are cloned from param to pull_param.
   2) in gen6_upload_vec4_push_constants() (which is used by Gen6 and Gen7) 
-all- values of param are uploaded, but there is an assert() checking that no 
more than a critical number push constants are uploaded (i.e. essentially, 
before padding that nr_params/8 is not more than 32)
   3) the only assignment I see to nr_params  is in 
vec4_visitor::setup_uniforms() setting it to this->uniforms*4

However, I did not find anywhere in the code that guaranteed that nr_params is 
no more than 256. So, where is it set? Or is vec4_visitor::uniforms guaranteed 
not to go beyond 64 somehow?

-Kevin


_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to