Lines Matching refs:prog
188 _mesa_init_gl_program(struct gl_program *prog, gl_shader_stage stage, in _mesa_init_gl_program() argument
191 if (!prog) in _mesa_init_gl_program()
194 memset(prog, 0, sizeof(*prog)); in _mesa_init_gl_program()
195 prog->Id = id; in _mesa_init_gl_program()
196 prog->Target = _mesa_shader_stage_to_program(stage); in _mesa_init_gl_program()
197 prog->RefCount = 1; in _mesa_init_gl_program()
198 prog->Format = GL_PROGRAM_FORMAT_ASCII_ARB; in _mesa_init_gl_program()
199 prog->info.stage = stage; in _mesa_init_gl_program()
200 prog->info.use_legacy_math_rules = is_arb_asm; in _mesa_init_gl_program()
216 prog->SamplerUnits[i] = i; in _mesa_init_gl_program()
219 return prog; in _mesa_init_gl_program()
226 struct gl_program *prog; in _mesa_new_program() local
230 prog = (struct gl_program*)rzalloc(NULL, struct gl_vertex_program); in _mesa_new_program()
233 prog = rzalloc(NULL, struct gl_program); in _mesa_new_program()
237 return _mesa_init_gl_program(prog, stage, id, is_arb_asm); in _mesa_new_program()
245 _mesa_delete_program(struct gl_context *ctx, struct gl_program *prog) in _mesa_delete_program() argument
248 assert(prog); in _mesa_delete_program()
249 assert(prog->RefCount==0); in _mesa_delete_program()
251 st_release_variants(st, prog); in _mesa_delete_program()
253 free(prog->serialized_nir); in _mesa_delete_program()
254 free(prog->base_serialized_nir); in _mesa_delete_program()
256 if (prog == &_mesa_DummyProgram) in _mesa_delete_program()
259 if (prog->Parameters) { in _mesa_delete_program()
260 _mesa_free_parameter_list(prog->Parameters); in _mesa_delete_program()
263 if (prog->nir) { in _mesa_delete_program()
264 ralloc_free(prog->nir); in _mesa_delete_program()
267 if (prog->sh.BindlessSamplers) { in _mesa_delete_program()
268 ralloc_free(prog->sh.BindlessSamplers); in _mesa_delete_program()
271 if (prog->sh.BindlessImages) { in _mesa_delete_program()
272 ralloc_free(prog->sh.BindlessImages); in _mesa_delete_program()
275 if (prog->driver_cache_blob) { in _mesa_delete_program()
276 ralloc_free(prog->driver_cache_blob); in _mesa_delete_program()
279 ralloc_free(prog); in _mesa_delete_program()
306 struct gl_program *prog) in _mesa_reference_program_() argument
310 if (*ptr && prog) { in _mesa_reference_program_()
313 assert(prog->Target == GL_VERTEX_PROGRAM_ARB); in _mesa_reference_program_()
315 assert(prog->Target == GL_FRAGMENT_PROGRAM_ARB || in _mesa_reference_program_()
316 prog->Target == GL_FRAGMENT_PROGRAM_NV); in _mesa_reference_program_()
318 assert(prog->Target == GL_GEOMETRY_PROGRAM_NV); in _mesa_reference_program_()
337 if (prog) { in _mesa_reference_program_()
338 p_atomic_inc(&prog->RefCount); in _mesa_reference_program_()
341 *ptr = prog; in _mesa_reference_program_()
350 const struct gl_program *prog) in _mesa_get_min_invocations_per_fragment() argument
368 if (prog->info.fs.uses_sample_qualifier || in _mesa_get_min_invocations_per_fragment()
369 BITSET_TEST(prog->info.system_values_read, SYSTEM_VALUE_SAMPLE_ID) || in _mesa_get_min_invocations_per_fragment()
370 BITSET_TEST(prog->info.system_values_read, SYSTEM_VALUE_SAMPLE_POS)) in _mesa_get_min_invocations_per_fragment()
383 gl_external_samplers(const struct gl_program *prog) in gl_external_samplers() argument
386 GLbitfield mask = prog->SamplersUsed; in gl_external_samplers()
390 if (prog->sh.SamplerTargets[idx] == TEXTURE_EXTERNAL_INDEX) in gl_external_samplers()
412 _mesa_add_separate_state_parameters(struct gl_program *prog, in _mesa_add_separate_state_parameters() argument
437 _mesa_add_parameter(prog->Parameters, PROGRAM_STATE_VAR, in _mesa_add_separate_state_parameters()
444 prog->Parameters->StateFlags |= in _mesa_add_separate_state_parameters()
449 int num_instr = prog->arb.NumInstructions; in _mesa_add_separate_state_parameters()
450 struct prog_instruction *instrs = prog->arb.Instructions; in _mesa_add_separate_state_parameters()