dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.3,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.4,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.5,Fail
-dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.7,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.8,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.9,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.10,Fail
-dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.11,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.12,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.13,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.14,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.17,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.18,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_implementation_draw_buffers.19,Fail
-dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.1,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.2,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.10,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.11,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.15,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.16,Fail
dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.17,Fail
-dEQP-GLES3.functional.draw_buffers_indexed.random.max_required_draw_buffers.18,Fail
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag,Fail
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_x,Fail
dEQP-GLES3.functional.fbo.blit.rect.nearest_consistency_mag_reverse_dst_y,Fail
unsigned sz = nir_alu_type_get_type_size(ins->src_types[i]);
assert((sz == base_size) || (sz == base_size / 2));
- /* Promote 8bit moves to 16bit ones so we can support any swizzles. */
- if (sz == 8 && base_size == 8 && ins->op == midgard_alu_op_imov) {
- ins->outmod = midgard_outmod_keeplo;
- base_size = 16;
- }
-
midgard_src_expand_mode expand_mode = midgard_src_passthrough;
unsigned swizzle = mir_pack_swizzle(ins->mask, ins->swizzle[i],
sz, base_size, channeled,
ins->mask = mir_from_bytemask(bytemask, type_size);
}
-/* Checks if we should use an upper destination override, rather than the lower
- * one in the IR. Returns zero if no, returns the bytes to shift otherwise */
-
+/*
+ * Checks if we should use an upper destination override, rather than the lower
+ * one in the IR. If yes, returns the bytes to shift by. If no, returns zero
+ * for a lower override and negative for no override.
+ */
signed
mir_upper_override(midgard_instruction *ins, unsigned inst_size)
{
unsigned type_size = nir_alu_type_get_type_size(ins->dest_type);
- /* 8bit imovs are promoted to 16bit ones with .sext on the source and
- * .keeplo on the destination to accomodate with non-identity swizzles.
- */
- if (ins->op == midgard_alu_op_imov && type_size == 8)
- return 0;
-
/* If the sizes are the same, there's nothing to override */
if (type_size == inst_size)
return -1;