[Mesa-dev] [PATCH 2/3] glsl: fix conversions from uint to bool and from float/bool to uint
Kenneth Graunke
kenneth at whitecape.org
Mon Apr 18 11:30:24 PDT 2011
On 04/17/2011 11:39 PM, Bryan Cain wrote:
> ---
> src/glsl/ir_validate.cpp | 6 +++---
> 1 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/src/glsl/ir_validate.cpp b/src/glsl/ir_validate.cpp
> index f3fceb2..41ffdfd 100644
> --- a/src/glsl/ir_validate.cpp
> +++ b/src/glsl/ir_validate.cpp
> @@ -254,7 +254,7 @@ ir_validate::visit_leave(ir_expression *ir)
>
> case ir_unop_f2i:
> assert(ir->operands[0]->type->base_type == GLSL_TYPE_FLOAT);
> - assert(ir->type->base_type == GLSL_TYPE_INT);
> + assert(ir->type->is_integer());
> break;
> case ir_unop_i2f:
> assert(ir->operands[0]->type->base_type == GLSL_TYPE_INT);
> @@ -269,12 +269,12 @@ ir_validate::visit_leave(ir_expression *ir)
> assert(ir->type->base_type == GLSL_TYPE_FLOAT);
> break;
> case ir_unop_i2b:
> - assert(ir->operands[0]->type->base_type == GLSL_TYPE_INT);
> + assert(ir->operands[0]->type->is_integer());
> assert(ir->type->base_type == GLSL_TYPE_BOOL);
> break;
> case ir_unop_b2i:
> assert(ir->operands[0]->type->base_type == GLSL_TYPE_BOOL);
> - assert(ir->type->base_type == GLSL_TYPE_INT);
> + assert(ir->type->is_integer());
> break;
> case ir_unop_u2f:
> assert(ir->operands[0]->type->base_type == GLSL_TYPE_UINT);
Hi Bryan,
Thanks for the patches! This one looks good: f2i and b2i can have type
int/ivec or uint/uvec, so using is_integer() is correct.
Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
More information about the mesa-dev
mailing list