aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/program
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-09-05 09:00:27 +0200
committermarha <marha@users.sourceforge.net>2011-09-05 09:00:27 +0200
commit51a003c23f4e27a826e56b0a3465d1e3e922d678 (patch)
tree502470d9e5724764860fe16653b0f73a77fb6983 /mesalib/src/mesa/program
parentbdc38022df44bde91e7ff95f6446cf20e19eaa5f (diff)
parent324c1ed4069c7d49d0ff7c63261281148f9b6cd8 (diff)
downloadvcxsrv-51a003c23f4e27a826e56b0a3465d1e3e922d678.tar.gz
vcxsrv-51a003c23f4e27a826e56b0a3465d1e3e922d678.tar.bz2
vcxsrv-51a003c23f4e27a826e56b0a3465d1e3e922d678.zip
Merge remote-tracking branch 'origin/released'
Conflicts: libxcb/src/xcb_in.c mesalib/src/mesa/main/formats.c mesalib/src/mesa/main/mtypes.h mesalib/src/mesa/program/ir_to_mesa.cpp mesalib/src/mesa/state_tracker/st_cb_bufferobjects.c mesalib/src/mesa/state_tracker/st_extensions.c mesalib/src/mesa/state_tracker/st_mesa_to_tgsi.c mesalib/src/mesa/swrast/s_context.c mesalib/src/mesa/swrast/s_readpix.c
Diffstat (limited to 'mesalib/src/mesa/program')
-rw-r--r--mesalib/src/mesa/program/ir_to_mesa.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/mesalib/src/mesa/program/ir_to_mesa.cpp b/mesalib/src/mesa/program/ir_to_mesa.cpp
index 1540eb77e..a29bf31f8 100644
--- a/mesalib/src/mesa/program/ir_to_mesa.cpp
+++ b/mesalib/src/mesa/program/ir_to_mesa.cpp
@@ -3119,7 +3119,7 @@ get_mesa_program(struct gl_context *ctx,
switch (mesa_inst->Opcode) {
case OPCODE_IF:
- if (options->EmitNoIfs) {
+ if (options->MaxIfDepth == 0) {
linker_warning(shader_program,
"Couldn't flatten if-statement. "
"This will likely result in software "
@@ -3232,7 +3232,7 @@ _mesa_ir_link_shader(struct gl_context *ctx, struct gl_shader_program *prog)
/* Lowering */
do_mat_op_to_vec(ir);
lower_instructions(ir, (MOD_TO_FRACT | DIV_TO_MUL_RCP | EXP_TO_EXP2
- | LOG_TO_LOG2
+ | LOG_TO_LOG2 | INT_DIV_TO_MUL_RCP
| ((options->EmitNoPow) ? POW_TO_EXP2 : 0)));
progress = do_lower_jumps(ir, true, true, options->EmitNoMainReturn, options->EmitNoCont, options->EmitNoLoops) || progress;
@@ -3241,10 +3241,10 @@ _mesa_ir_link_shader(struct gl_context *ctx, struct gl_shader_program *prog)
progress = lower_quadop_vector(ir, true) || progress;
- if (options->EmitNoIfs) {
+ if (options->MaxIfDepth == 0)
progress = lower_discard(ir) || progress;
- progress = lower_if_to_cond_assign(ir) || progress;
- }
+
+ progress = lower_if_to_cond_assign(ir, options->MaxIfDepth) || progress;
if (options->EmitNoNoise)
progress = lower_noise(ir) || progress;