radeonsi: unify duplicated code for initial shader compilation
[mesa.git] / src / gallium / drivers / radeonsi / si_state.h
index 4a539fc4855e1fed1f31f2c660fd913c3366b80b..8fd80f73effe69af688d14c193c47da41161c1f6 100644 (file)
@@ -42,7 +42,7 @@
 struct si_screen;
 struct si_shader;
 struct si_shader_selector;
-struct r600_texture;
+struct si_texture;
 struct si_qbo_state;
 
 /* State atoms are callbacks which write a sequence of packets into a GPU
@@ -407,7 +407,7 @@ struct si_buffer_resources {
 
 /* si_descriptors.c */
 void si_set_mutable_tex_desc_fields(struct si_screen *sscreen,
-                                   struct r600_texture *tex,
+                                   struct si_texture *tex,
                                    const struct legacy_surf_level *base_level_info,
                                    unsigned base_level, unsigned first_level,
                                    unsigned block_width, bool is_stencil,
@@ -462,7 +462,7 @@ si_make_buffer_descriptor(struct si_screen *screen, struct r600_resource *buf,
                          uint32_t *state);
 void
 si_make_texture_descriptor(struct si_screen *screen,
-                          struct r600_texture *tex,
+                          struct si_texture *tex,
                           bool sampler,
                           enum pipe_texture_target target,
                           enum pipe_format pipe_format,
@@ -492,6 +492,10 @@ bool si_update_shaders(struct si_context *sctx);
 void si_init_shader_functions(struct si_context *sctx);
 bool si_init_shader_cache(struct si_screen *sscreen);
 void si_destroy_shader_cache(struct si_screen *sscreen);
+void si_schedule_initial_compile(struct si_context *sctx, unsigned processor,
+                                struct util_queue_fence *ready_fence,
+                                struct si_compiler_ctx_state *compiler_ctx_state,
+                                void *job, util_queue_execute_func execute);
 void si_get_active_slot_masks(const struct tgsi_shader_info *info,
                              uint32_t *const_and_shader_buffers,
                              uint64_t *samplers_and_images);