summaryrefslogtreecommitdiffstats
path: root/src/mesa/drivers/dri/i965/brw_gs.c
diff options
context:
space:
mode:
authorTimothy Arceri <[email protected]>2016-10-19 11:59:12 +1100
committerTimothy Arceri <[email protected]>2016-10-26 14:29:36 +1100
commit92f77e9c01085c6babe6ce80dfe4e0e7abab61a1 (patch)
treeecea28bd6506ea75c1e980ea688f684a97822226 /src/mesa/drivers/dri/i965/brw_gs.c
parent9045ddcfe4ed2ecc6220db69dc33d6049956b99b (diff)
i965/mesa/st: eliminate gl_geometry_program
We now get all the gs metadata from shader_info. Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/mesa/drivers/dri/i965/brw_gs.c')
-rw-r--r--src/mesa/drivers/dri/i965/brw_gs.c19
1 files changed, 8 insertions, 11 deletions
diff --git a/src/mesa/drivers/dri/i965/brw_gs.c b/src/mesa/drivers/dri/i965/brw_gs.c
index b493e6c3a2f..8fba6fadd9b 100644
--- a/src/mesa/drivers/dri/i965/brw_gs.c
+++ b/src/mesa/drivers/dri/i965/brw_gs.c
@@ -106,8 +106,7 @@ brw_codegen_gs_prog(struct brw_context *brw,
memset(&prog_data, 0, sizeof(prog_data));
- assign_gs_binding_table_offsets(devinfo, prog,
- &gp->program.Base, &prog_data);
+ assign_gs_binding_table_offsets(devinfo, prog, &gp->program, &prog_data);
/* Allocate the references to the uniforms that will end up in the
* prog_data associated with the compiled program, and which will be freed
@@ -119,7 +118,7 @@ brw_codegen_gs_prog(struct brw_context *brw,
*/
struct gl_linked_shader *gs = prog->_LinkedShaders[MESA_SHADER_GEOMETRY];
struct brw_shader *bgs = (struct brw_shader *) gs;
- int param_count = gp->program.Base.nir->num_uniforms / 4;
+ int param_count = gp->program.nir->num_uniforms / 4;
prog_data.base.base.param =
rzalloc_array(NULL, const gl_constant_value *, param_count);
@@ -130,15 +129,15 @@ brw_codegen_gs_prog(struct brw_context *brw,
prog_data.base.base.nr_params = param_count;
prog_data.base.base.nr_image_params = gs->NumImages;
- brw_nir_setup_glsl_uniforms(gp->program.Base.nir, prog, &gp->program.Base,
+ brw_nir_setup_glsl_uniforms(gp->program.nir, prog, &gp->program,
&prog_data.base.base,
compiler->scalar_stage[MESA_SHADER_GEOMETRY]);
- uint64_t outputs_written = gp->program.Base.info.outputs_written;
+ uint64_t outputs_written = gp->program.info.outputs_written;
prog_data.base.cull_distance_mask =
- ((1 << gp->program.Base.CullDistanceArraySize) - 1) <<
- gp->program.Base.ClipDistanceArraySize;
+ ((1 << gp->program.CullDistanceArraySize) - 1) <<
+ gp->program.ClipDistanceArraySize;
brw_compute_vue_map(devinfo,
&prog_data.base.vue_map, outputs_written,
@@ -213,14 +212,13 @@ brw_gs_populate_key(struct brw_context *brw,
struct gl_context *ctx = &brw->ctx;
struct brw_geometry_program *gp =
(struct brw_geometry_program *) brw->geometry_program;
- struct gl_program *prog = &gp->program.Base;
memset(key, 0, sizeof(*key));
key->program_string_id = gp->id;
/* _NEW_TEXTURE */
- brw_populate_sampler_prog_key_data(ctx, prog, &key->tex);
+ brw_populate_sampler_prog_key_data(ctx, &gp->program, &key->tex);
}
void
@@ -277,8 +275,7 @@ brw_gs_precompile(struct gl_context *ctx,
struct brw_stage_prog_data *old_prog_data = brw->gs.base.prog_data;
bool success;
- struct gl_geometry_program *gp = (struct gl_geometry_program *) prog;
- struct brw_geometry_program *bgp = brw_geometry_program(gp);
+ struct brw_geometry_program *bgp = brw_geometry_program(prog);
memset(&key, 0, sizeof(key));