aco: error when block has no logical preds but VGPRs are live at the start
[mesa.git] / src / amd / compiler / aco_live_var_analysis.cpp
index c00325b92b7184886d821f9ae71ce7a7e475ed8c..1f02e67bc1ab49056b0e5423344cd04574e3eca2 100644 (file)
@@ -220,7 +220,8 @@ void process_live_temps_per_block(Program *program, live& lives, Block* block,
       phi_idx--;
    }
 
-   if (!(block->index != 0 || (live_vgprs.empty() && live_sgprs.empty()))) {
+   if ((block->logical_preds.empty() && !live_vgprs.empty()) ||
+       (block->linear_preds.empty() && !live_sgprs.empty())) {
       aco_print_program(program, stderr);
       fprintf(stderr, "These temporaries are never defined or are defined after use:\n");
       for (Temp vgpr : live_vgprs)