From: Jason Ekstrand Date: Thu, 2 Feb 2017 22:56:23 +0000 (-0800) Subject: i965: Allow int64 conversion operations in channel_expressions X-Git-Tag: upstream/17.1.0~2425 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=91d2d26f33ab3ed062492a0dd84e7b5c9ad36052;p=platform%2Fupstream%2Fmesa.git i965: Allow int64 conversion operations in channel_expressions This fixes 143 of the new piglit tests added by Nicolai Reviewed-by: Lionel Landwerlin Reviewed-by: Samuel Iglesias Gonsálvez --- 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 45934bc..5d89988 100644 --- a/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp +++ b/src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp @@ -232,6 +232,10 @@ ir_channel_expressions_visitor::visit_leave(ir_assignment *ir) case ir_unop_bitcast_f2i: case ir_unop_bitcast_f2u: case ir_unop_bitcast_u2f: + case ir_unop_bitcast_u642d: + case ir_unop_bitcast_i642d: + case ir_unop_bitcast_d2u64: + case ir_unop_bitcast_d2i64: case ir_unop_i2u: case ir_unop_u2i: case ir_unop_f2i: @@ -249,6 +253,26 @@ ir_channel_expressions_visitor::visit_leave(ir_assignment *ir) case ir_unop_d2u: case ir_unop_u2d: case ir_unop_d2b: + case ir_unop_i642i: + case ir_unop_u642i: + case ir_unop_i642u: + case ir_unop_u642u: + case ir_unop_i642b: + case ir_unop_i642f: + case ir_unop_u642f: + case ir_unop_i642d: + case ir_unop_u642d: + case ir_unop_i2i64: + case ir_unop_u2i64: + case ir_unop_b2i64: + case ir_unop_f2i64: + case ir_unop_d2i64: + case ir_unop_i2u64: + case ir_unop_u2u64: + case ir_unop_f2u64: + case ir_unop_d2u64: + case ir_unop_u642i64: + case ir_unop_i642u64: case ir_unop_trunc: case ir_unop_ceil: case ir_unop_floor: @@ -443,30 +467,6 @@ ir_channel_expressions_visitor::visit_leave(ir_assignment *ir) case ir_unop_vote_any: case ir_unop_vote_all: case ir_unop_vote_eq: - case ir_unop_bitcast_u642d: - case ir_unop_bitcast_i642d: - case ir_unop_bitcast_d2u64: - case ir_unop_bitcast_d2i64: - case ir_unop_i642i: - case ir_unop_u642i: - case ir_unop_i642u: - case ir_unop_u642u: - case ir_unop_i642b: - case ir_unop_i642f: - case ir_unop_u642f: - case ir_unop_i642d: - case ir_unop_u642d: - case ir_unop_i2i64: - case ir_unop_u2i64: - case ir_unop_b2i64: - case ir_unop_f2i64: - case ir_unop_d2i64: - case ir_unop_i2u64: - case ir_unop_u2u64: - case ir_unop_f2u64: - case ir_unop_d2u64: - case ir_unop_u642i64: - case ir_unop_i642u64: case ir_unop_unpack_int_2x32: case ir_unop_unpack_uint_2x32: unreachable("unsupported");