Lines Matching refs:ctx
204 zink_program_descriptor_is_buffer(struct zink_context *ctx, enum pipe_shader_type stage, enum zink_descriptor_type type, unsigned i);
207 zink_update_gfx_program(struct zink_context *ctx, struct zink_gfx_program *prog);
210 zink_create_gfx_program(struct zink_context *ctx,
215 zink_destroy_gfx_program(struct zink_context *ctx,
219 zink_get_gfx_pipeline(struct zink_context *ctx,
225 zink_program_init(struct zink_context *ctx);
228 zink_program_get_descriptor_usage(struct zink_context *ctx, enum pipe_shader_type stage, enum zink_descriptor_type type);
234 zink_gfx_program_reference(struct zink_context *ctx,
243 zink_destroy_gfx_program(ctx, old_dst);
251 zink_create_compute_program(struct zink_context *ctx, struct zink_shader *shader);
253 zink_destroy_compute_program(struct zink_context *ctx,
260 zink_compute_program_reference(struct zink_context *ctx,
269 zink_destroy_compute_program(ctx, old_dst);
277 zink_program_reference(struct zink_context *ctx,
286 return zink_compute_program_reference(ctx, &comp, NULL);
289 return zink_gfx_program_reference(ctx, &prog, NULL);
297 zink_program_update_compute_pipeline_state(struct zink_context *ctx, struct zink_compute_program *comp, const uint block[3]);
299 zink_update_compute_program(struct zink_context *ctx);
312 zink_set_fs_key(struct zink_context *ctx)
314 ctx->dirty_shader_stages |= BITFIELD_BIT(PIPE_SHADER_FRAGMENT);
315 return (struct zink_fs_key *)&ctx->gfx_pipeline_state.shader_keys.key[PIPE_SHADER_FRAGMENT];
319 zink_get_fs_key(struct zink_context *ctx)
321 return (const struct zink_fs_key *)&ctx->gfx_pipeline_state.shader_keys.key[PIPE_SHADER_FRAGMENT];
325 zink_set_tcs_key_patches(struct zink_context *ctx, uint8_t patch_vertices)
327 struct zink_tcs_key *tcs = (struct zink_tcs_key*)&ctx->gfx_pipeline_state.shader_keys.key[PIPE_SHADER_TESS_CTRL];
330 ctx->dirty_shader_stages |= BITFIELD_BIT(PIPE_SHADER_TESS_CTRL);
336 zink_get_tcs_key(struct zink_context *ctx)
338 return (const struct zink_tcs_key *)&ctx->gfx_pipeline_state.shader_keys.key[PIPE_SHADER_TESS_CTRL];
342 zink_update_fs_key_samples(struct zink_context *ctx);
345 zink_set_vs_key(struct zink_context *ctx)
347 ctx->dirty_shader_stages |= BITFIELD_BIT(PIPE_SHADER_VERTEX);
348 return (struct zink_vs_key *)&ctx->gfx_pipeline_state.shader_keys.key[PIPE_SHADER_VERTEX];
352 zink_get_vs_key(struct zink_context *ctx)
354 return (const struct zink_vs_key *)&ctx->gfx_pipeline_state.shader_keys.key[PIPE_SHADER_VERTEX];
358 zink_set_last_vertex_key(struct zink_context *ctx)
360 ctx->last_vertex_stage_dirty = true;
361 return (struct zink_vs_key_base *)&ctx->gfx_pipeline_state.shader_keys.last_vertex;
365 zink_get_last_vertex_key(struct zink_context *ctx)
367 return (const struct zink_vs_key_base *)&ctx->gfx_pipeline_state.shader_keys.last_vertex;
371 zink_set_fs_point_coord_key(struct zink_context *ctx)
373 const struct zink_fs_key *fs = zink_get_fs_key(ctx);
374 bool disable = !ctx->gfx_pipeline_state.has_points || !ctx->rast_state->base.sprite_coord_enable;
375 uint8_t coord_replace_bits = disable ? 0 : ctx->rast_state->base.sprite_coord_enable;
376 bool coord_replace_yinvert = disable ? false : !!ctx->rast_state->base.sprite_coord_mode;
378 zink_set_fs_key(ctx)->coord_replace_bits = coord_replace_bits;
379 zink_set_fs_key(ctx)->coord_replace_yinvert = coord_replace_yinvert;
384 zink_set_rasterizer_discard(struct zink_context *ctx, bool disable);