From: Rhys Perry Date: Thu, 26 Mar 2020 13:22:13 +0000 (+0000) Subject: aco: look at p_{extract,split}_vector's definitions in pred_by_exec_mask() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=4a909068ade7125e32e626c870d2197e1f5896c2;p=mesa.git aco: look at p_{extract,split}_vector's definitions in pred_by_exec_mask() Signed-off-by: Rhys Perry Reviewed-by: Daniel Schürmann Tested-by: Marge Bot Part-of: --- diff --git a/src/amd/compiler/aco_insert_exec_mask.cpp b/src/amd/compiler/aco_insert_exec_mask.cpp index 527d63627e0..909c1735453 100644 --- a/src/amd/compiler/aco_insert_exec_mask.cpp +++ b/src/amd/compiler/aco_insert_exec_mask.cpp @@ -107,10 +107,13 @@ bool pred_by_exec_mask(aco_ptr& instr) { if (instr->format == Format::PSEUDO) { switch (instr->opcode) { case aco_opcode::p_create_vector: - return instr->definitions[0].getTemp().type() == RegType::vgpr; case aco_opcode::p_extract_vector: case aco_opcode::p_split_vector: - return instr->operands[0].getTemp().type() == RegType::vgpr; + for (Definition def : instr->definitions) { + if (def.getTemp().type() == RegType::vgpr) + return true; + } + return false; case aco_opcode::p_spill: case aco_opcode::p_reload: return false;