On Fri, Feb 6, 2015 at 2:47 AM, Ian Romanick <i...@freedesktop.org> wrote: > There's a bunch of tabs that should be replaced with spaces.
Soooo... this whole mixed tab/space situation is quite annoying. A lot of lines come from copying other stuff, and having to fix up tabs on those can be quite a bother. I'd be happy to run "M-x untabify" on the whole file afterwards. But doing this mixed blocks of tabs vs non-tabs, sometimes in the same function, is incredibly confusing IMO. > > Other comments below... > > On 02/06/2015 06:56 AM, Ilia Mirkin wrote: >> From: Dave Airlie <airl...@gmail.com> >> >> Signed-off-by: Dave Airlie <airl...@redhat.com> >> --- >> src/glsl/ir.cpp | 104 >> ++++++++++++++++++++++++++++++++++++++-- >> src/glsl/ir.h | 21 ++++++++ >> src/glsl/ir_validate.cpp | 68 +++++++++++++++++++++++--- >> src/mesa/program/ir_to_mesa.cpp | 10 ++++ >> 4 files changed, 193 insertions(+), 10 deletions(-) >> >> diff --git a/src/glsl/ir.h b/src/glsl/ir.h >> index a0f48b2..6e7c654 100644 >> --- a/src/glsl/ir.h >> +++ b/src/glsl/ir.h >> @@ -1275,6 +1275,13 @@ enum ir_expression_operation { >> ir_unop_bitcast_f2u, /**< Bit-identical float-to-uint "conversion" */ >> ir_unop_any, >> >> + ir_unop_d2f, /**< Double-to-float conversion. */ >> + ir_unop_f2d, /**< Float-to-double conversion. */ >> + ir_unop_d2i, /**< Double-to-integer conversion. */ >> + ir_unop_i2d, /**< Integer-to-double conversion. */ >> + ir_unop_d2u, /**< Double-to-unsigned conversion. */ >> + ir_unop_u2d, /**< Unsigned-to-double conversion. */ >> + > > These should be properly ordered with the other cast operations. Also, > ir_unop_d2b is missing. Blast! You're right. I thought we were OK with d2f + f2b but... I guess not. I'll add it in :( > >> /** >> * \name Unary floating-point rounding operations. >> */ >> @@ -1345,6 +1352,17 @@ enum ir_expression_operation { >> /*@}*/ >> >> ir_unop_saturate, > > Blank line here. Done. > >> + /** >> + * \name Double packing, part of ARB_gpu_shader_fp64. >> + */ >> + /*@{*/ >> + ir_unop_pack_double_2x32, >> + ir_unop_unpack_double_2x32, >> + /*@}*/ >> + >> + ir_unop_frexp_sig, >> + ir_unop_frexp_exp, > > I'm confused about these... what is it? frexp returns 2 values (significand and exponent), and glsl ir can't support that. These 2 functions together return the 2 values, one at a time. You didn't run into this with the float version with ARB_gs5 because it's insta-lowered to other things in builtin_functions.cpp, but apparently there's some HW which actually has those instructions, so Dave wanted to pass them through. -ilia _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev