r600g: Fix instruction group merge when there are predicated insts.
Signed-off-by: Tom Stellard <thomas.stellard@amd.com>
This commit is contained in:
committed by
Tom Stellard
parent
56227f875b
commit
72f7632c6b
@@ -1047,9 +1047,27 @@ static int merge_inst_groups(struct r600_bytecode *bc, struct r600_bytecode_alu
|
||||
if (r)
|
||||
return r;
|
||||
|
||||
for (i = 0; i < max_slots; ++i) {
|
||||
if (prev[i]) {
|
||||
if (prev[i]->pred_sel)
|
||||
return 0;
|
||||
if (is_alu_once_inst(bc, prev[i]))
|
||||
return 0;
|
||||
}
|
||||
if (slots[i]) {
|
||||
if (slots[i]->pred_sel)
|
||||
return 0;
|
||||
if (is_alu_once_inst(bc, slots[i]))
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
for (i = 0; i < max_slots; ++i) {
|
||||
struct r600_bytecode_alu *alu;
|
||||
|
||||
if (num_once_inst > 0)
|
||||
return 0;
|
||||
|
||||
/* check number of literals */
|
||||
if (prev[i]) {
|
||||
if (r600_bytecode_alu_nliterals(bc, prev[i], literal, &nliteral))
|
||||
|
||||
Reference in New Issue
Block a user