i965/vec4: if register allocation fails, don't try to schedule.

Otherwise the scheduler would be invoked with prog_data->total_grf ==
0, causing havoc.

In a future patch, this will allow us to try compiling a geometry
shader in DUAL_OBJECT mode with spilling disabled, and then fall back
to DUAL_INSTANCED mode if that failed.

Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
Paul Berry 2013-10-16 13:13:20 -07:00
parent 8bb15813e3
commit 89647cffb3

View file

@ -1520,7 +1520,7 @@ vec4_visitor::run()
while (!reg_allocate()) {
if (failed)
break;
return false;
}
opt_schedule_instructions();