r300g: Don't bother testing for empty scissors.
If somebody goes through that much effort, they probably intended it. So humor them. :3
This commit is contained in:
@@ -109,9 +109,6 @@ struct r300_sampler_state {
|
||||
struct r300_scissor_regs {
|
||||
uint32_t top_left; /* R300_SC_SCISSORS_TL: 0x43e0 */
|
||||
uint32_t bottom_right; /* R300_SC_SCISSORS_BR: 0x43e4 */
|
||||
|
||||
/* Whether everything is culled by scissoring. */
|
||||
boolean empty_area;
|
||||
};
|
||||
|
||||
struct r300_scissor_state {
|
||||
|
||||
@@ -69,12 +69,6 @@ uint32_t r300_translate_primitive(unsigned prim)
|
||||
}
|
||||
}
|
||||
|
||||
static boolean r300_nothing_to_draw(struct r300_context *r300)
|
||||
{
|
||||
return ((struct r300_rs_state*)r300->rs_state.state)->rs.scissor &&
|
||||
((struct r300_scissor_state*)r300->scissor_state.state)->scissor.empty_area;
|
||||
}
|
||||
|
||||
static uint32_t r300_provoking_vertex_fixes(struct r300_context *r300,
|
||||
unsigned mode)
|
||||
{
|
||||
@@ -236,10 +230,6 @@ void r300_draw_range_elements(struct pipe_context* pipe,
|
||||
return;
|
||||
}
|
||||
|
||||
if (r300_nothing_to_draw(r300)) {
|
||||
return;
|
||||
}
|
||||
|
||||
r300_update_derived_state(r300);
|
||||
|
||||
if (!r300_setup_vertex_buffers(r300)) {
|
||||
@@ -289,10 +279,6 @@ void r300_draw_arrays(struct pipe_context* pipe, unsigned mode,
|
||||
return;
|
||||
}
|
||||
|
||||
if (r300_nothing_to_draw(r300)) {
|
||||
return;
|
||||
}
|
||||
|
||||
r300_update_derived_state(r300);
|
||||
|
||||
if (!r300_setup_vertex_buffers(r300)) {
|
||||
@@ -324,10 +310,6 @@ void r300_swtcl_draw_arrays(struct pipe_context* pipe,
|
||||
return;
|
||||
}
|
||||
|
||||
if (r300_nothing_to_draw(r300)) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < r300->vertex_buffer_count; i++) {
|
||||
void* buf = pipe_buffer_map(pipe->screen,
|
||||
r300->vertex_buffer[i].buffer,
|
||||
@@ -369,10 +351,6 @@ void r300_swtcl_draw_range_elements(struct pipe_context* pipe,
|
||||
return;
|
||||
}
|
||||
|
||||
if (r300_nothing_to_draw(r300)) {
|
||||
return;
|
||||
}
|
||||
|
||||
for (i = 0; i < r300->vertex_buffer_count; i++) {
|
||||
void* buf = pipe_buffer_map(pipe->screen,
|
||||
r300->vertex_buffer[i].buffer,
|
||||
|
||||
@@ -494,9 +494,6 @@ static void r300_set_scissor_regs(const struct pipe_scissor_state* state,
|
||||
(((state->maxx - 1) + 1440) << R300_SCISSORS_X_SHIFT) |
|
||||
(((state->maxy - 1) + 1440) << R300_SCISSORS_Y_SHIFT);
|
||||
}
|
||||
|
||||
scissor->empty_area = state->minx >= state->maxx ||
|
||||
state->miny >= state->maxy;
|
||||
}
|
||||
|
||||
static void
|
||||
|
||||
Reference in New Issue
Block a user