Cell: remove commands from top-level while loop which should only appear in batch buffers

This commit is contained in:
Brian 2008-02-01 15:20:07 -07:00
parent 0e9a370ae2
commit b1a472bfb7

View file

@ -447,34 +447,22 @@ main_loop(void)
0 /* rid */);
wait_on_mask( 1 << tag );
/*
* NOTE: most commands should be contained in a batch buffer
*/
switch (opcode & CELL_CMD_OPCODE_MASK) {
case CELL_CMD_EXIT:
if (Debug)
printf("SPU %u: EXIT\n", spu.init.id);
exitFlag = 1;
break;
case CELL_CMD_STATE_FRAMEBUFFER:
cmd_state_framebuffer(&cmd.fb);
break;
case CELL_CMD_CLEAR_SURFACE:
cmd_clear_surface(&cmd.clear);
break;
case CELL_CMD_RENDER:
{
uint pos_incr;
cmd_render(&cmd.render, &pos_incr);
assert(pos_incr == 0);
}
break;
case CELL_CMD_VS_EXECUTE:
spu_execute_vertex_shader(&draw, &cmd.vs);
break;
case CELL_CMD_BATCH:
cmd_batch(opcode);
break;
case CELL_CMD_FINISH:
cmd_finish();
break;
default:
printf("Bad opcode!\n");
}