diff --git a/src/freedreno/ir3/ir3_context.c b/src/freedreno/ir3/ir3_context.c index 13059d8d6af..35a1453780c 100644 --- a/src/freedreno/ir3/ir3_context.c +++ b/src/freedreno/ir3/ir3_context.c @@ -284,6 +284,9 @@ ir3_create_collect(struct ir3_block *block, struct ir3_instruction *const *arr, if (arrsz == 0) return NULL; + if (arrsz == 1) + return arr[0]; + unsigned flags = dest_flags(arr[0]); collect = ir3_instr_create(block, OPC_META_COLLECT, 1, arrsz);