diff options
author | Marek Olšák <[email protected]> | 2015-04-11 14:55:26 +0200 |
---|---|---|
committer | Emil Velikov <[email protected]> | 2015-04-22 16:14:33 +0100 |
commit | ef0e335c1422b8a394073d89a781ed5847da0eb1 (patch) | |
tree | 751cac635233d358ccae1ecba707301be145a6e2 /src/mesa | |
parent | f8966a07d94bb3e49db31b92ee01e339a908bd50 (diff) |
glsl_to_tgsi: don't use a potentially-undefined immediate for ir_query_levels
Cc: 10.4 10.5 <[email protected]>
Reviewed-by: Brian Paul <[email protected]>
(cherry picked from commit dcc74d47c40bf117f2dfaa359f9de7faef2c2200)
Diffstat (limited to 'src/mesa')
-rw-r--r-- | src/mesa/state_tracker/st_glsl_to_tgsi.cpp | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp index eba8af069ca..0d7145e457d 100644 --- a/src/mesa/state_tracker/st_glsl_to_tgsi.cpp +++ b/src/mesa/state_tracker/st_glsl_to_tgsi.cpp @@ -2860,7 +2860,7 @@ glsl_to_tgsi_visitor::visit(ir_texture *ir) break; case ir_query_levels: opcode = TGSI_OPCODE_TXQ; - lod_info = st_src_reg(PROGRAM_IMMEDIATE, 0, GLSL_TYPE_INT); + lod_info = undef_src; levels_src = get_temp(ir->type); break; case ir_txf: @@ -4353,7 +4353,7 @@ src_register(struct st_translate *t, const struct st_src_reg *reg) { switch(reg->file) { case PROGRAM_UNDEFINED: - return ureg_src_undef(); + return ureg_imm4f(t->ureg, 0, 0, 0, 0); case PROGRAM_TEMPORARY: case PROGRAM_ARRAY: @@ -4551,10 +4551,8 @@ compile_tgsi_instruction(struct st_translate *t, inst->saturate, clamp_dst_color_output); - for (i = 0; i < num_src; i++) { - assert(inst->src[i].file != PROGRAM_UNDEFINED); + for (i = 0; i < num_src; i++) src[i] = translate_src(t, &inst->src[i]); - } switch(inst->op) { case TGSI_OPCODE_BGNLOOP: |