/* spilling and scheduling */
aco::live live_vars = aco::live_var_analysis(program.get(), args->options);
aco::spill(program.get(), live_vars, args->options);
- if (program->collect_statistics)
- aco::collect_presched_stats(program.get());
- aco::schedule_program(program.get(), live_vars);
- validate(program.get());
std::string llvm_ir;
if (args->options->record_ir) {
free(data);
}
+ if (program->collect_statistics)
+ aco::collect_presched_stats(program.get());
+ aco::schedule_program(program.get(), live_vars);
+ validate(program.get());
+
/* Register Allocation */
aco::register_allocation(program.get(), live_vars.live_out);
if (args->options->dump_shader) {