summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/radeonsi/si_state.h
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2019-02-12 14:38:31 -0500
committerMarek Olšák <[email protected]>2019-05-16 13:10:07 -0400
commit301344008f9d651676d6cfb4c4a4047c987efa6d (patch)
tree87ae6c7135e72268e2678db2a9fd8270d1dc7ac0 /src/gallium/drivers/radeonsi/si_state.h
parentca9edd7cd06ad53205fe26ead201ba67cefb8f14 (diff)
radeonsi: allow si_shader_select_with_key to return an optimized shader or fail
If a prim discard compute shader hasn't finished compilation, we don't want to any shader. Tested-by: Dieter Nützel <[email protected]> Acked-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src/gallium/drivers/radeonsi/si_state.h')
-rw-r--r--src/gallium/drivers/radeonsi/si_state.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state.h b/src/gallium/drivers/radeonsi/si_state.h
index 116fce5b146..15c4ef6d9a1 100644
--- a/src/gallium/drivers/radeonsi/si_state.h
+++ b/src/gallium/drivers/radeonsi/si_state.h
@@ -41,6 +41,7 @@
struct si_screen;
struct si_shader;
+struct si_shader_ctx_state;
struct si_shader_selector;
struct si_texture;
struct si_qbo_state;
@@ -576,6 +577,12 @@ void si_schedule_initial_compile(struct si_context *sctx, unsigned processor,
void si_get_active_slot_masks(const struct tgsi_shader_info *info,
uint32_t *const_and_shader_buffers,
uint64_t *samplers_and_images);
+int si_shader_select_with_key(struct si_screen *sscreen,
+ struct si_shader_ctx_state *state,
+ struct si_compiler_ctx_state *compiler_state,
+ struct si_shader_key *key,
+ int thread_index,
+ bool optimized_or_none);
/* si_state_draw.c */
void si_emit_cache_flush(struct si_context *sctx);