radeonsi/gfx10: support pixel shaders without exports
It only works if there are not color and no Z exports. Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com> Acked-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
2adc8e2736
commit
fbf781e401
|
@ -1587,8 +1587,15 @@ static void si_shader_ps(struct si_screen *sscreen, struct si_shader *shader)
|
|||
* stalls without this setting.
|
||||
*
|
||||
* Don't add this to CB_SHADER_MASK.
|
||||
*
|
||||
* GFX10 supports pixel shaders without exports by setting both
|
||||
* the color and Z formats to SPI_SHADER_ZERO. The hw will skip export
|
||||
* instructions if any are present.
|
||||
*/
|
||||
if (!spi_shader_col_format &&
|
||||
if ((sscreen->info.chip_class <= GFX9 ||
|
||||
info->uses_kill ||
|
||||
shader->key.part.ps.epilog.alpha_func != PIPE_FUNC_ALWAYS) &&
|
||||
!spi_shader_col_format &&
|
||||
!info->writes_z && !info->writes_stencil && !info->writes_samplemask)
|
||||
spi_shader_col_format = V_028714_SPI_SHADER_32_R;
|
||||
|
||||
|
|
Loading…
Reference in New Issue