glsl: Fix assertion failure on handling switch on uint expressions.
authorEric Anholt <eric@anholt.net>
Mon, 14 May 2012 15:51:03 +0000 (08:51 -0700)
committerEric Anholt <eric@anholt.net>
Thu, 17 May 2012 17:05:24 +0000 (10:05 -0700)
Fixes piglit glsl-1.30/execution/switch/fs-uint.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/glsl/ast_to_hir.cpp

index c59e5e6..998f8dd 100644 (file)
@@ -3599,7 +3599,7 @@ ast_switch_statement::test_to_hir(exec_list *instructions,
       test_expression->hir(instructions,
                           state);
 
-   state->switch_state.test_var = new(ctx) ir_variable(glsl_type::int_type,
+   state->switch_state.test_var = new(ctx) ir_variable(test_val->type,
                                                       "switch_test_tmp",
                                                       ir_var_temporary);
    ir_dereference_variable *deref_test_var =