summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Ekstrand <jason.ekstrand@intel.com>2017-02-02 14:56:23 -0800
committerSamuel Iglesias Gonsálvez <siglesias@igalia.com>2017-02-09 10:18:34 +0100
commit91d2d26f33ab3ed062492a0dd84e7b5c9ad36052 (patch)
treed31c2e85d2f1f92af8656f0d6d443c85129bf33e
parentf3d911463e8f739f8780cb4a8238161e887af5f6 (diff)
i965: Allow int64 conversion operations in channel_expressions
This fixes 143 of the new piglit tests added by Nicolai Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Reviewed-by: Samuel Iglesias Gonsálvez <siglesias@igalia.com>
-rw-r--r--src/mesa/drivers/dri/i965/brw_fs_channel_expressions.cpp48
1 files changed, 24 insertions, 24 deletions
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 45934bcdf71..5d8998810cf 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");