diff options
author | Jason Ekstrand <[email protected]> | 2017-09-28 21:45:41 -0700 |
---|---|---|
committer | Jason Ekstrand <[email protected]> | 2017-10-12 22:39:31 -0700 |
commit | 29737eac985cf028b19d977cb8fa0d7320cf91cf (patch) | |
tree | 5d20822db9d678ae549c0c57b540ddec6d9fbcd9 /src/intel/compiler/brw_nir.h | |
parent | c3d54d03757fcb656cc4839a2c7978d97f75508d (diff) |
intel: Allocate prog_data::[pull_]param deeper inside the compiler
Now that we're always growing the param array as-needed, we can
allocate the param array in common code and stop repeating the
allocation everywere. In order to keep things sane, we ralloc the
[pull_]param array off of the compile context and then steal it back
to a NULL context later. This doesn't get us all the way to where
prog_data::[pull_]param is purely an out parameter of the back-end
compiler but it gets us a lot closer.
Reviewed-by: Jordan Justen <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
Diffstat (limited to 'src/intel/compiler/brw_nir.h')
-rw-r--r-- | src/intel/compiler/brw_nir.h | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/intel/compiler/brw_nir.h b/src/intel/compiler/brw_nir.h index 6f64a731cac..1493b742e42 100644 --- a/src/intel/compiler/brw_nir.h +++ b/src/intel/compiler/brw_nir.h @@ -134,12 +134,13 @@ enum brw_reg_type brw_type_for_nir_type(const struct gen_device_info *devinfo, enum glsl_base_type brw_glsl_base_type_for_nir_type(nir_alu_type type); -void brw_nir_setup_glsl_uniforms(nir_shader *shader, +void brw_nir_setup_glsl_uniforms(void *mem_ctx, nir_shader *shader, const struct gl_program *prog, struct brw_stage_prog_data *stage_prog_data, bool is_scalar); -void brw_nir_setup_arb_uniforms(nir_shader *shader, struct gl_program *prog, +void brw_nir_setup_arb_uniforms(void *mem_ctx, nir_shader *shader, + struct gl_program *prog, struct brw_stage_prog_data *stage_prog_data); void brw_nir_analyze_ubo_ranges(const struct brw_compiler *compiler, |