unsigned get_subdword_operand_stride(chip_class chip, const aco_ptr<Instruction>& instr, unsigned idx, RegClass rc)
{
+ /* v_readfirstlane_b32 cannot use SDWA */
+ if (instr->opcode == aco_opcode::p_as_uniform)
+ return 4;
if (instr->format == Format::PSEUDO && chip >= GFX8)
return rc.bytes() % 2 == 0 ? 2 : 1;
//FIXME: if nothing helps, shift-rotate the registers to make space
- fprintf(stderr, "ACO: failed to allocate registers during shader compilation\n");
+ aco_err(ctx.program, "Failed to allocate registers during shader compilation.");
abort();
}