i965: replace brw_vertex_program with new generic brw_program

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Timothy Arceri 2016-10-18 15:26:57 +11:00
parent 3423488d55
commit cb2d181944
6 changed files with 20 additions and 23 deletions

View File

@ -326,8 +326,9 @@ struct brw_state_flags {
uint64_t brw; uint64_t brw;
}; };
/** Subclass of Mesa vertex program */
struct brw_vertex_program { /** Subclass of Mesa program */
struct brw_program {
struct gl_program program; struct gl_program program;
GLuint id; GLuint id;
}; };
@ -1698,16 +1699,16 @@ brw_context( struct gl_context *ctx )
return (struct brw_context *)ctx; return (struct brw_context *)ctx;
} }
static inline struct brw_vertex_program * static inline struct brw_program *
brw_vertex_program(struct gl_program *p) brw_program(struct gl_program *p)
{ {
return (struct brw_vertex_program *) p; return (struct brw_program *) p;
} }
static inline const struct brw_vertex_program * static inline const struct brw_program *
brw_vertex_program_const(const struct gl_program *p) brw_program_const(const struct gl_program *p)
{ {
return (const struct brw_vertex_program *) p; return (const struct brw_program *) p;
} }
static inline struct brw_tess_ctrl_program * static inline struct brw_tess_ctrl_program *

View File

@ -131,7 +131,7 @@ static struct gl_program *brwNewProgram( struct gl_context *ctx,
switch (target) { switch (target) {
case GL_VERTEX_PROGRAM_ARB: { case GL_VERTEX_PROGRAM_ARB: {
struct brw_vertex_program *prog = CALLOC_STRUCT(brw_vertex_program); struct brw_program *prog = CALLOC_STRUCT(brw_program);
if (prog) { if (prog) {
prog->id = get_new_program_id(brw->screen); prog->id = get_new_program_id(brw->screen);
@ -244,9 +244,9 @@ brwProgramStringNotify(struct gl_context *ctx,
break; break;
} }
case GL_VERTEX_PROGRAM_ARB: { case GL_VERTEX_PROGRAM_ARB: {
struct brw_vertex_program *newVP = brw_vertex_program(prog); struct brw_program *newVP = brw_program(prog);
const struct brw_vertex_program *curVP = const struct brw_program *curVP =
brw_vertex_program_const(brw->vertex_program); brw_program_const(brw->vertex_program);
if (newVP == curVP) if (newVP == curVP)
brw->ctx.NewDriverState |= BRW_NEW_VERTEX_PROGRAM; brw->ctx.NewDriverState |= BRW_NEW_VERTEX_PROGRAM;

View File

@ -87,7 +87,7 @@ brw_vs_outputs_written(struct brw_context *brw, struct brw_vs_prog_key *key,
bool bool
brw_codegen_vs_prog(struct brw_context *brw, brw_codegen_vs_prog(struct brw_context *brw,
struct gl_shader_program *prog, struct gl_shader_program *prog,
struct brw_vertex_program *vp, struct brw_program *vp,
struct brw_vs_prog_key *key) struct brw_vs_prog_key *key)
{ {
const struct brw_compiler *compiler = brw->screen->compiler; const struct brw_compiler *compiler = brw->screen->compiler;
@ -307,8 +307,7 @@ brw_vs_populate_key(struct brw_context *brw,
{ {
struct gl_context *ctx = &brw->ctx; struct gl_context *ctx = &brw->ctx;
/* BRW_NEW_VERTEX_PROGRAM */ /* BRW_NEW_VERTEX_PROGRAM */
struct brw_vertex_program *vp = struct brw_program *vp = (struct brw_program *)brw->vertex_program;
(struct brw_vertex_program *)brw->vertex_program;
struct gl_program *prog = (struct gl_program *) brw->vertex_program; struct gl_program *prog = (struct gl_program *) brw->vertex_program;
memset(key, 0, sizeof(*key)); memset(key, 0, sizeof(*key));
@ -360,8 +359,7 @@ brw_upload_vs_prog(struct brw_context *brw)
struct gl_shader_program **current = ctx->_Shader->CurrentProgram; struct gl_shader_program **current = ctx->_Shader->CurrentProgram;
struct brw_vs_prog_key key; struct brw_vs_prog_key key;
/* BRW_NEW_VERTEX_PROGRAM */ /* BRW_NEW_VERTEX_PROGRAM */
struct brw_vertex_program *vp = struct brw_program *vp = (struct brw_program *)brw->vertex_program;
(struct brw_vertex_program *)brw->vertex_program;
if (!brw_vs_state_dirty(brw)) if (!brw_vs_state_dirty(brw))
return; return;
@ -389,7 +387,7 @@ brw_vs_precompile(struct gl_context *ctx,
struct brw_stage_prog_data *old_prog_data = brw->vs.base.prog_data; struct brw_stage_prog_data *old_prog_data = brw->vs.base.prog_data;
bool success; bool success;
struct brw_vertex_program *bvp = brw_vertex_program(prog); struct brw_program *bvp = brw_program(prog);
memset(&key, 0, sizeof(key)); memset(&key, 0, sizeof(key));

View File

@ -65,7 +65,7 @@ brw_upload_vs_prog(struct brw_context *brw);
bool bool
brw_codegen_vs_prog(struct brw_context *brw, brw_codegen_vs_prog(struct brw_context *brw,
struct gl_shader_program *prog, struct gl_shader_program *prog,
struct brw_vertex_program *vp, struct brw_program *vp,
struct brw_vs_prog_key *key); struct brw_vs_prog_key *key);
void void

View File

@ -113,8 +113,7 @@ brw_upload_vs_pull_constants(struct brw_context *brw)
struct brw_stage_state *stage_state = &brw->vs.base; struct brw_stage_state *stage_state = &brw->vs.base;
/* BRW_NEW_VERTEX_PROGRAM */ /* BRW_NEW_VERTEX_PROGRAM */
struct brw_vertex_program *vp = struct brw_program *vp = (struct brw_program *) brw->vertex_program;
(struct brw_vertex_program *) brw->vertex_program;
/* BRW_NEW_VS_PROG_DATA */ /* BRW_NEW_VS_PROG_DATA */
const struct brw_stage_prog_data *prog_data = brw->vs.base.prog_data; const struct brw_stage_prog_data *prog_data = brw->vs.base.prog_data;

View File

@ -40,8 +40,7 @@ gen6_upload_vs_push_constants(struct brw_context *brw)
struct brw_stage_state *stage_state = &brw->vs.base; struct brw_stage_state *stage_state = &brw->vs.base;
/* _BRW_NEW_VERTEX_PROGRAM */ /* _BRW_NEW_VERTEX_PROGRAM */
const struct brw_vertex_program *vp = const struct brw_program *vp = brw_program_const(brw->vertex_program);
brw_vertex_program_const(brw->vertex_program);
/* BRW_NEW_VS_PROG_DATA */ /* BRW_NEW_VS_PROG_DATA */
const struct brw_stage_prog_data *prog_data = brw->vs.base.prog_data; const struct brw_stage_prog_data *prog_data = brw->vs.base.prog_data;