} else {
if (m_current_block->expected_ar_uses() == 0) {
start_new_block(out_blocks, Block::alu);
- m_current_block->set_instr_flag(Instr::force_cf);
if (!m_current_block->try_reserve_kcache(*group))
unreachable("Scheduling a group in a new block should always succeed");
// kcache reservation failed, so we have to start a new CF
start_new_block(out_blocks, Block::alu);
- m_current_block->set_instr_flag(Instr::force_cf);
} else {
return false;
}
assert(!group->has_lds_group_start());
assert(m_current_block->expected_ar_uses() == 0);
start_new_block(out_blocks, Block::alu);
- m_current_block->set_instr_flag(Instr::force_cf);
}
return success;
out_blocks.push_back(m_current_block);
m_current_block =
new Block(m_current_block->nesting_depth(), m_current_block->id());
+ m_current_block->set_instr_flag(Instr::force_cf);
}
m_current_block->set_type(type);
}