case ir_unop_interpolate_at_centroid:
case ir_binop_interpolate_at_offset:
case ir_binop_interpolate_at_sample:
+ case ir_unop_pack_double_2x32:
return false;
default:
break;
case ir_unop_interpolate_at_centroid:
case ir_binop_interpolate_at_offset:
case ir_binop_interpolate_at_sample:
+ /* We scalarize these in NIR, so no need to do it here */
+ case ir_unop_pack_double_2x32:
return visit_continue;
default:
case ir_unop_i2b:
case ir_unop_b2i:
case ir_unop_u2f:
+ 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_trunc:
case ir_unop_ceil:
case ir_unop_floor:
case ir_unop_interpolate_at_centroid:
case ir_binop_interpolate_at_offset:
case ir_binop_interpolate_at_sample:
+ case ir_unop_unpack_double_2x32:
unreachable("not reached: expression operates on scalars only");
case ir_unop_pack_double_2x32:
- case ir_unop_unpack_double_2x32:
+ unreachable("not reached: to be lowered in NIR, should've been skipped");
+
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");
+ unreachable("should have been lowered by lower_instructions");
}
ir->remove();