OSDN Git Service

i965/vs: Fix regression on pre-gen6 with no VS uniforms in use.
authorEric Anholt <eric@anholt.net>
Fri, 30 Aug 2013 17:45:00 +0000 (10:45 -0700)
committerEric Anholt <eric@anholt.net>
Fri, 30 Aug 2013 18:29:50 +0000 (11:29 -0700)
df06745c5adb524e15d157f976c08f1718f08efa made it so that we didn't
allocate extra uniform space for unused clip planes, which also
incidentally made us not allocate any space at all, which we were relying
on for this no-uniforms case.  Instead of putting the knowledge of this
special HW exception into the thing that normally preallocates prog_data
for us, just allocate it here.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=68766
Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/drivers/dri/i965/brw_vec4.cpp

index ae836d3..ab472b0 100644 (file)
@@ -1271,6 +1271,7 @@ vec4_visitor::setup_uniforms(int reg)
    if (brw->gen < 6 && this->uniforms == 0) {
       this->uniform_vector_size[this->uniforms] = 1;
 
+      prog_data->param = reralloc(NULL, prog_data->param, const float *, 4);
       for (unsigned int i = 0; i < 4; i++) {
         unsigned int slot = this->uniforms * 4 + i;
         static float zero = 0.0;