summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp')
-rw-r--r--src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp31
1 files changed, 1 insertions, 30 deletions
diff --git a/src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp b/src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp
index 4c9c960..6db6d27 100644
--- a/src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp
+++ b/src/mesa/drivers/dri/i965/gen6_gs_visitor.cpp
@@ -147,27 +147,6 @@ gen6_gs_visitor::emit_prolog()
}
void
-gen6_gs_visitor::visit(ir_emit_vertex *ir)
-{
- /* To ensure that we don't output more vertices than the shader specified
- * using max_vertices, do the logic inside a conditional of the form "if
- * (vertex_count < MAX)"
- */
- unsigned num_output_vertices = c->gp->program.VerticesOut;
- emit(CMP(dst_null_d(), this->vertex_count,
- src_reg(num_output_vertices), BRW_CONDITIONAL_L));
- emit(IF(BRW_PREDICATE_NORMAL));
-
- gs_emit_vertex(ir->stream_id());
-
- this->current_annotation = "emit vertex: increment vertex count";
- emit(ADD(dst_reg(this->vertex_count), this->vertex_count,
- src_reg(1u)));
-
- emit(BRW_OPCODE_ENDIF);
-}
-
-void
gen6_gs_visitor::gs_emit_vertex(int stream_id)
{
this->current_annotation = "gen6 emit vertex";
@@ -231,12 +210,6 @@ gen6_gs_visitor::gs_emit_vertex(int stream_id)
}
void
-gen6_gs_visitor::visit(ir_end_primitive *)
-{
- gs_end_primitive();
-}
-
-void
gen6_gs_visitor::gs_end_primitive()
{
this->current_annotation = "gen6 end primitive";
@@ -356,9 +329,7 @@ gen6_gs_visitor::emit_thread_end()
if (c->gp->program.OutputType != GL_POINTS) {
emit(CMP(dst_null_d(), this->first_vertex, 0u, BRW_CONDITIONAL_Z));
emit(IF(BRW_PREDICATE_NORMAL));
- {
- visit((ir_end_primitive *) NULL);
- }
+ gs_end_primitive();
emit(BRW_OPCODE_ENDIF);
}