vc4: Initialize the various qreg arrays when allocating them.

This is particularly important for outputs, where we try to MOV the whole
vec4 to the VPM, even if only 1-3 components had been set up.  It might
also be important for temporaries, if the shader reads components before
writing them.
This commit is contained in:
Eric Anholt 2014-09-17 13:10:51 -07:00
parent b44a7a3223
commit b0256fb75f
1 changed files with 4 additions and 0 deletions

View File

@ -73,12 +73,16 @@ resize_qreg_array(struct vc4_compile *c,
if (*size >= decl_size)
return;
uint32_t old_size = *size;
*size = MAX2(*size * 2, decl_size);
*regs = reralloc(c, *regs, struct qreg, *size);
if (!*regs) {
fprintf(stderr, "Malloc failure\n");
abort();
}
for (uint32_t i = old_size; i < *size; i++)
(*regs)[i] = c->undef;
}
static struct qreg