From: Iago Toral Quiroga <ito...@igalia.com> Found while testing UBO loads in scenarios like this:
(assign (x) (var_ref vec_ctor) (expression float d2f (expression double ubo_load (constant uint (0)) (constant uint (0))))) Without this patch, the src expression of d2f would be evaluated to a bitsize of 32, which is not correct and would hit an assert in nir_validate. --- src/compiler/nir/glsl_to_nir.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/compiler/nir/glsl_to_nir.cpp b/src/compiler/nir/glsl_to_nir.cpp index c77b430..8c75843 100644 --- a/src/compiler/nir/glsl_to_nir.cpp +++ b/src/compiler/nir/glsl_to_nir.cpp @@ -1190,6 +1190,7 @@ nir_visitor::evaluate_rvalue(ir_rvalue* ir) load_instr->dest.ssa.bit_size = glsl_get_bit_size(ir->type->base_type); } + this->result->bit_size = glsl_get_bit_size(ir->type->base_type); return this->result; } -- 2.5.0 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev