mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 07:38:10 +02:00
r600+sfn: Assign ps_conservative_z and switch to NIR defines
Signed-off-by: Gert Wollny <gert.wollny@collabora.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22778>
This commit is contained in:
parent
c815189112
commit
bbd265b8e8
3 changed files with 11 additions and 6 deletions
|
|
@ -3511,13 +3511,13 @@ void evergreen_update_ps_state(struct pipe_context *ctx, struct r600_pipe_shader
|
||||||
|
|
||||||
switch (rshader->ps_conservative_z) {
|
switch (rshader->ps_conservative_z) {
|
||||||
default: /* fall through */
|
default: /* fall through */
|
||||||
case TGSI_FS_DEPTH_LAYOUT_ANY:
|
case FRAG_DEPTH_LAYOUT_ANY:
|
||||||
db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_ANY_Z);
|
db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_ANY_Z);
|
||||||
break;
|
break;
|
||||||
case TGSI_FS_DEPTH_LAYOUT_GREATER:
|
case FRAG_DEPTH_LAYOUT_GREATER:
|
||||||
db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_GREATER_THAN_Z);
|
db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_GREATER_THAN_Z);
|
||||||
break;
|
break;
|
||||||
case TGSI_FS_DEPTH_LAYOUT_LESS:
|
case FRAG_DEPTH_LAYOUT_LESS:
|
||||||
db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_LESS_THAN_Z);
|
db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_LESS_THAN_Z);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1578,13 +1578,13 @@ static void r600_emit_db_misc_state(struct r600_context *rctx, struct r600_atom
|
||||||
if (rctx->b.gfx_level >= R700) {
|
if (rctx->b.gfx_level >= R700) {
|
||||||
switch (a->ps_conservative_z) {
|
switch (a->ps_conservative_z) {
|
||||||
default: /* fall through */
|
default: /* fall through */
|
||||||
case TGSI_FS_DEPTH_LAYOUT_ANY:
|
case FRAG_DEPTH_LAYOUT_ANY:
|
||||||
db_render_control |= S_028D0C_CONSERVATIVE_Z_EXPORT(V_028D0C_EXPORT_ANY_Z);
|
db_render_control |= S_028D0C_CONSERVATIVE_Z_EXPORT(V_028D0C_EXPORT_ANY_Z);
|
||||||
break;
|
break;
|
||||||
case TGSI_FS_DEPTH_LAYOUT_GREATER:
|
case FRAG_DEPTH_LAYOUT_GREATER:
|
||||||
db_render_control |= S_028D0C_CONSERVATIVE_Z_EXPORT(V_028D0C_EXPORT_GREATER_THAN_Z);
|
db_render_control |= S_028D0C_CONSERVATIVE_Z_EXPORT(V_028D0C_EXPORT_GREATER_THAN_Z);
|
||||||
break;
|
break;
|
||||||
case TGSI_FS_DEPTH_LAYOUT_LESS:
|
case FRAG_DEPTH_LAYOUT_LESS:
|
||||||
db_render_control |= S_028D0C_CONSERVATIVE_Z_EXPORT(V_028D0C_EXPORT_LESS_THAN_Z);
|
db_render_control |= S_028D0C_CONSERVATIVE_Z_EXPORT(V_028D0C_EXPORT_LESS_THAN_Z);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1084,6 +1084,11 @@ r600_shader_from_nir(struct r600_context *rctx,
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (sh->info.stage == MESA_SHADER_FRAGMENT)
|
||||||
|
pipeshader->shader.ps_conservative_z =
|
||||||
|
sh->info.fs.depth_layout = sh->info.fs.depth_layout;
|
||||||
|
|
||||||
if (sh->info.stage == MESA_SHADER_GEOMETRY) {
|
if (sh->info.stage == MESA_SHADER_GEOMETRY) {
|
||||||
r600::sfn_log << r600::SfnLog::shader_info
|
r600::sfn_log << r600::SfnLog::shader_info
|
||||||
<< "Geometry shader, create copy shader\n";
|
<< "Geometry shader, create copy shader\n";
|
||||||
|
|
|
||||||
Loading…
Add table
Reference in a new issue