[Mesa-dev] [PATCH] i965: just avoid warnings with fp64
Ian Romanick
idr at freedesktop.org
Thu Feb 19 15:44:21 PST 2015
Yes, please.
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
On 02/19/2015 03:38 PM, Dave Airlie wrote:
> This just fills in some blanks to avoid warnings in the i965 driver.
>
> Signed-off-by: Dave Airlie <airlied at redhat.com>
> ---
> src/mesa/drivers/dri/i965/brw_fs.cpp | 1 +
> src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp | 13 +++++++++++++
> src/mesa/drivers/dri/i965/brw_fs_visitor.cpp | 14 ++++++++++++++
> src/mesa/drivers/dri/i965/brw_shader.cpp | 1 +
> src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp | 13 +++++++++++++
> 5 files changed, 42 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs.cpp b/src/mesa/drivers/dri/i965/brw_fs.cpp
> index a562b8a..a2a5234 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs.cpp
> @@ -673,6 +673,7 @@ fs_visitor::type_size(const struct glsl_type *type)
> case GLSL_TYPE_VOID:
> case GLSL_TYPE_ERROR:
> case GLSL_TYPE_INTERFACE:
> + case GLSL_TYPE_DOUBLE:
> unreachable("not reached");
> }
>
> diff --git a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp b/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp
> index cb0a079..c64742c 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp
> @@ -445,6 +445,19 @@ ir_channel_expressions_visitor::visit_leave(ir_assignment *ir)
> case ir_binop_interpolate_at_offset:
> case ir_binop_interpolate_at_sample:
> unreachable("not reached: expression operates on scalars only");
> +
> + case ir_unop_pack_double_2x32:
> + case ir_unop_unpack_double_2x32:
> + case ir_unop_frexp_sig:
> + case ir_unop_frexp_exp:
> + case ir_unop_d2f:
> + case ir_unop_f2d:
> + case ir_unop_d2i:
> + case ir_unop_i2d:
> + case ir_unop_d2u:
> + case ir_unop_u2d:
> + case ir_unop_d2b:
> + unreachable("no fp64 support yet");
> }
>
> ir->remove();
> diff --git a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> index 04e0f9a..7486071 100644
> --- a/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_fs_visitor.cpp
> @@ -1192,6 +1192,20 @@ fs_visitor::visit(ir_expression *ir)
> case ir_binop_interpolate_at_sample:
> unreachable("already handled above");
> break;
> +
> + case ir_unop_d2f:
> + case ir_unop_f2d:
> + case ir_unop_d2i:
> + case ir_unop_i2d:
> + case ir_unop_d2u:
> + case ir_unop_u2d:
> + case ir_unop_d2b:
> + case ir_unop_pack_double_2x32:
> + case ir_unop_unpack_double_2x32:
> + case ir_unop_frexp_sig:
> + case ir_unop_frexp_exp:
> + unreachable("fp64 todo");
> + break;
> }
> }
>
> diff --git a/src/mesa/drivers/dri/i965/brw_shader.cpp b/src/mesa/drivers/dri/i965/brw_shader.cpp
> index 71146c5..b0e9c82 100644
> --- a/src/mesa/drivers/dri/i965/brw_shader.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_shader.cpp
> @@ -308,6 +308,7 @@ brw_type_for_base_type(const struct glsl_type *type)
> case GLSL_TYPE_VOID:
> case GLSL_TYPE_ERROR:
> case GLSL_TYPE_INTERFACE:
> + case GLSL_TYPE_DOUBLE:
> unreachable("not reached");
> }
>
> diff --git a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
> index 562fc30..6154e43 100644
> --- a/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
> +++ b/src/mesa/drivers/dri/i965/brw_vec4_visitor.cpp
> @@ -612,6 +612,7 @@ type_size(const struct glsl_type *type)
> return 0;
> case GLSL_TYPE_IMAGE:
> case GLSL_TYPE_VOID:
> + case GLSL_TYPE_DOUBLE:
> case GLSL_TYPE_ERROR:
> case GLSL_TYPE_INTERFACE:
> unreachable("not reached");
> @@ -1889,6 +1890,18 @@ vec4_visitor::visit(ir_expression *ir)
> unreachable("not reached: should not occur in vertex shader");
> case ir_binop_ldexp:
> unreachable("not reached: should be handled by ldexp_to_arith()");
> + case ir_unop_d2f:
> + case ir_unop_f2d:
> + case ir_unop_d2i:
> + case ir_unop_i2d:
> + case ir_unop_d2u:
> + case ir_unop_u2d:
> + case ir_unop_d2b:
> + case ir_unop_pack_double_2x32:
> + case ir_unop_unpack_double_2x32:
> + case ir_unop_frexp_sig:
> + case ir_unop_frexp_exp:
> + unreachable("fp64 todo");
> }
> }
>
>
More information about the mesa-dev
mailing list