On 01/06/2014 03:12 PM, Brian Paul wrote: > Evidently, there's some other definition of "min" and "max" that > causes MSVC to choke on these function names. Renaming to min2() > and max2() fixes things.
That's really strange...but I'm fine with renaming them. Sorry for the trouble. Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> > --- > src/glsl/builtin_functions.cpp | 6 +++--- > src/glsl/ir_builder.cpp | 4 ++-- > src/glsl/ir_builder.h | 4 ++-- > 3 files changed, 7 insertions(+), 7 deletions(-) > > diff --git a/src/glsl/builtin_functions.cpp b/src/glsl/builtin_functions.cpp > index f56be0c..10127f3 100644 > --- a/src/glsl/builtin_functions.cpp > +++ b/src/glsl/builtin_functions.cpp > @@ -4073,7 +4073,7 @@ builtin_builder::_min3(builtin_available_predicate > avail, > ir_variable *z = in_var(z_type, "z"); > MAKE_SIG(x_type, avail, 3, x, y, z); > > - ir_expression *min3 = min(x, min(y,z)); > + ir_expression *min3 = min2(x, min2(y,z)); > body.emit(ret(min3)); > > return sig; > @@ -4089,7 +4089,7 @@ builtin_builder::_max3(builtin_available_predicate > avail, > ir_variable *z = in_var(z_type, "z"); > MAKE_SIG(x_type, avail, 3, x, y, z); > > - ir_expression *max3 = max(x, max(y,z)); > + ir_expression *max3 = max2(x, max2(y,z)); > body.emit(ret(max3)); > > return sig; > @@ -4105,7 +4105,7 @@ builtin_builder::_mid3(builtin_available_predicate > avail, > ir_variable *z = in_var(z_type, "z"); > MAKE_SIG(x_type, avail, 3, x, y, z); > > - ir_expression *mid3 = max(min(x, y), max(min(x, z), min(y, z))); > + ir_expression *mid3 = max2(min2(x, y), max2(min2(x, z), min2(y, z))); > body.emit(ret(mid3)); > > return sig; > diff --git a/src/glsl/ir_builder.cpp b/src/glsl/ir_builder.cpp > index 31ed191..7f41ed6 100644 > --- a/src/glsl/ir_builder.cpp > +++ b/src/glsl/ir_builder.cpp > @@ -211,12 +211,12 @@ ir_expression *sub(operand a, operand b) > return expr(ir_binop_sub, a, b); > } > > -ir_expression *min(operand a, operand b) > +ir_expression *min2(operand a, operand b) > { > return expr(ir_binop_min, a, b); > } > > -ir_expression *max(operand a, operand b) > +ir_expression *max2(operand a, operand b) > { > return expr(ir_binop_max, a, b); > } > diff --git a/src/glsl/ir_builder.h b/src/glsl/ir_builder.h > index 4b85ea1..f00e6f3 100644 > --- a/src/glsl/ir_builder.h > +++ b/src/glsl/ir_builder.h > @@ -184,8 +184,8 @@ ir_expression *i2b(operand a); > ir_expression *f2b(operand a); > ir_expression *b2f(operand a); > > -ir_expression *min(operand a, operand b); > -ir_expression *max(operand a, operand b); > +ir_expression *min2(operand a, operand b); > +ir_expression *max2(operand a, operand b); > > ir_expression *fma(operand a, operand b, operand c); > ir_expression *lrp(operand x, operand y, operand a); > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev