diff options
author | Vinson Lee <[email protected]> | 2010-08-28 23:55:51 -0700 |
---|---|---|
committer | Vinson Lee <[email protected]> | 2010-08-28 23:55:51 -0700 |
commit | f67400d4671ce7776f71cafced6546dddecba42c (patch) | |
tree | f18bf4f224204ad25c7a7677911dffe8016338e4 /src/glsl/ir.cpp | |
parent | 182d6350609408fa167d4a76ad02cdb93f10dcdd (diff) |
glsl: Initialize the rest of values of ir_constant::value.
Fixes valgrind uninitialized value errors in the piglit shader tests for
softpipe and llvmpipe.
Diffstat (limited to 'src/glsl/ir.cpp')
-rw-r--r-- | src/glsl/ir.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/glsl/ir.cpp b/src/glsl/ir.cpp index 8779ec73c9b..d56b6031164 100644 --- a/src/glsl/ir.cpp +++ b/src/glsl/ir.cpp @@ -326,6 +326,9 @@ ir_constant::ir_constant(float f) this->ir_type = ir_type_constant; this->type = glsl_type::float_type; this->value.f[0] = f; + for (int i = 1; i < 16; i++) { + this->value.f[i] = 0; + } } ir_constant::ir_constant(unsigned int u) @@ -333,6 +336,9 @@ ir_constant::ir_constant(unsigned int u) this->ir_type = ir_type_constant; this->type = glsl_type::uint_type; this->value.u[0] = u; + for (int i = 1; i < 16; i++) { + this->value.u[i] = 0; + } } ir_constant::ir_constant(int i) @@ -340,6 +346,9 @@ ir_constant::ir_constant(int i) this->ir_type = ir_type_constant; this->type = glsl_type::int_type; this->value.i[0] = i; + for (int i = 1; i < 16; i++) { + this->value.i[i] = 0; + } } ir_constant::ir_constant(bool b) @@ -347,6 +356,9 @@ ir_constant::ir_constant(bool b) this->ir_type = ir_type_constant; this->type = glsl_type::bool_type; this->value.b[0] = b; + for (int i = 1; i < 16; i++) { + this->value.b[i] = false; + } } ir_constant::ir_constant(const ir_constant *c, unsigned i) |