diff options
author | Marek Olšák <[email protected]> | 2011-09-26 23:46:42 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2011-09-29 01:09:53 +0200 |
commit | b2e6ca8ec759eadd355d678856a49facf53cbd43 (patch) | |
tree | 40f9704b610289de72de26c0dabb736c6e5e9dff /src/gallium | |
parent | 3c799623785a835c620cec9be28247ca7ab21b2b (diff) |
r300g: simplify the immd_is_good_idea function
Diffstat (limited to 'src/gallium')
-rw-r--r-- | src/gallium/drivers/r300/r300_render.c | 28 |
1 files changed, 2 insertions, 26 deletions
diff --git a/src/gallium/drivers/r300/r300_render.c b/src/gallium/drivers/r300/r300_render.c index 7d31ac40376..dad6d2fbf5f 100644 --- a/src/gallium/drivers/r300/r300_render.c +++ b/src/gallium/drivers/r300/r300_render.c @@ -313,40 +313,16 @@ static boolean r300_prepare_for_rendering(struct r300_context *r300, static boolean immd_is_good_idea(struct r300_context *r300, unsigned count) { - struct pipe_vertex_element* velem; - struct pipe_resource *buf; - boolean checked[PIPE_MAX_ATTRIBS] = {0}; - unsigned vertex_element_count = r300->velems->count; - unsigned i, vbi; - if (DBG_ON(r300, DBG_NO_IMMD)) { return FALSE; } - if (r300->draw) { - return FALSE; - } - if (count * r300->velems->vertex_size_dwords > IMMD_DWORDS) { return FALSE; } - /* We shouldn't map buffers referenced by CS, busy buffers, - * and ones placed in VRAM. */ - for (i = 0; i < vertex_element_count; i++) { - velem = &r300->velems->velem[i]; - vbi = velem->vertex_buffer_index; - - if (!checked[vbi]) { - buf = r300->vbuf_mgr->real_vertex_buffer[vbi].buffer; - - if ((r300_resource(buf)->domain != RADEON_DOMAIN_GTT)) { - return FALSE; - } - - checked[vbi] = TRUE; - } - } + /* Buffers can only be used for read by r300 (except query buffers, but + * those can't be bound by a state tracker as vertex buffers). */ return TRUE; } |