diff options
author | Marek Olšák <[email protected]> | 2016-10-11 16:55:41 +0200 |
---|---|---|
committer | Marek Olšák <[email protected]> | 2016-10-12 18:29:40 +0200 |
commit | e4bbab90224116b53a178612aafa83318d4eaf46 (patch) | |
tree | be40b13242b795615cbb9f0e2da8f3116d3347f6 /src | |
parent | 40e1f7e09bf1bc9b8ed6f847562bbb7154025420 (diff) |
radeonsi: fix R600_DEBUG=precompile for shader-db
radeonsi no longer supports pixel shaders without interpolation optimizations,
which led to assertion failures in si_shader_ps when running shader-db.
Reviewed-by: Nicolai Hähnle <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/radeonsi/si_state_shaders.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/radeonsi/si_state_shaders.c b/src/gallium/drivers/radeonsi/si_state_shaders.c index f6bd12915cd..c41c5196466 100644 --- a/src/gallium/drivers/radeonsi/si_state_shaders.c +++ b/src/gallium/drivers/radeonsi/si_state_shaders.c @@ -1233,6 +1233,12 @@ void si_init_shader_selector_async(void *job, int thread_index) key.tcs.epilog.prim_mode = PIPE_PRIM_TRIANGLES; break; case PIPE_SHADER_FRAGMENT: + key.ps.prolog.bc_optimize_for_persp = + sel->info.uses_persp_center && + sel->info.uses_persp_centroid; + key.ps.prolog.bc_optimize_for_linear = + sel->info.uses_linear_center && + sel->info.uses_linear_centroid; key.ps.epilog.alpha_func = PIPE_FUNC_ALWAYS; for (i = 0; i < 8; i++) if (sel->info.colors_written & (1 << i)) |