Remove old t_vertex.c codegen infrastructure, tie in new code.

Currently disabled, can enable with MESA_EXPERIMENTAL=t.
This commit is contained in:
Keith Whitwell
2005-05-18 15:26:48 +00:00
parent dc7fc17396
commit 2b2bd08589
9 changed files with 1410 additions and 1999 deletions

View File

@@ -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 GLuint check_input_changes( GLcontext *ctx )
}
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 @@ static void check_output_changes( GLcontext *ctx )
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 @@ void _tnl_run_pipeline( GLcontext *ctx )
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++) {