Remove old t_vertex.c codegen infrastructure, tie in new code.
Currently disabled, can enable with MESA_EXPERIMENTAL=t.
diff --git a/src/mesa/tnl/t_pipeline.c b/src/mesa/tnl/t_pipeline.c
index 8286760..6b0ea81 100644
--- a/src/mesa/tnl/t_pipeline.c
+++ b/src/mesa/tnl/t_pipeline.c
@@ -38,6 +38,7 @@
#include "t_context.h"
#include "t_pipeline.h"
#include "t_vp_build.h"
+#include "t_vertex.h"
void _tnl_install_pipeline( GLcontext *ctx,
const struct tnl_pipeline_stage **stages )
@@ -93,7 +94,7 @@
}
-static void check_output_changes( GLcontext *ctx )
+static GLuint check_output_changes( GLcontext *ctx )
{
#if 0
TNLcontext *tnl = TNL_CONTEXT(ctx);
@@ -109,6 +110,10 @@
if (tnl->pipeline.output_changes)
tnl->Driver.NotifyOutputChanges( ctx, tnl->pipeline.output_changes );
+
+ return tnl->pipeline.output_changes;
+#else
+ return ~0;
#endif
}
@@ -138,10 +143,15 @@
tnl->pipeline.new_state = 0;
tnl->pipeline.input_changes = 0;
- check_output_changes( ctx );
+
+ /* Pipeline can only change its output in response to either a
+ * statechange or an input size/stride change. No other changes
+ * are allowed.
+ */
+ if (check_output_changes( ctx ))
+ _tnl_notify_pipeline_output_change( ctx );
}
-
START_FAST_MATH(__tmp);
for (i = 0; i < tnl->pipeline.nr_stages ; i++) {