radeonsi: stop using TGSI_PROPERTY_FS_DEPTH_LAYOUT

Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6624>
This commit is contained in:
Marek Olšák
2020-09-01 18:27:11 -04:00
committed by Marge Bot
parent ce0291df4a
commit ebe8238f1b
2 changed files with 10 additions and 28 deletions

View File

@@ -465,25 +465,6 @@ void si_nir_scan_shader(const struct nir_shader *nir, struct si_shader_info *inf
/* post_depth_coverage implies early_fragment_tests */
info->base.fs.early_fragment_tests |= info->base.fs.post_depth_coverage;
if (nir->info.fs.depth_layout != FRAG_DEPTH_LAYOUT_NONE) {
switch (nir->info.fs.depth_layout) {
case FRAG_DEPTH_LAYOUT_ANY:
info->properties[TGSI_PROPERTY_FS_DEPTH_LAYOUT] = TGSI_FS_DEPTH_LAYOUT_ANY;
break;
case FRAG_DEPTH_LAYOUT_GREATER:
info->properties[TGSI_PROPERTY_FS_DEPTH_LAYOUT] = TGSI_FS_DEPTH_LAYOUT_GREATER;
break;
case FRAG_DEPTH_LAYOUT_LESS:
info->properties[TGSI_PROPERTY_FS_DEPTH_LAYOUT] = TGSI_FS_DEPTH_LAYOUT_LESS;
break;
case FRAG_DEPTH_LAYOUT_UNCHANGED:
info->properties[TGSI_PROPERTY_FS_DEPTH_LAYOUT] = TGSI_FS_DEPTH_LAYOUT_UNCHANGED;
break;
default:
unreachable("Unknow depth layout");
}
}
info->color_interpolate[0] = nir->info.fs.color0_interp;
info->color_interpolate[1] = nir->info.fs.color1_interp;
for (unsigned i = 0; i < 2; i++) {

View File

@@ -2764,16 +2764,17 @@ static void *si_create_shader_selector(struct pipe_context *ctx,
S_02880C_MASK_EXPORT_ENABLE(sel->info.writes_samplemask) |
S_02880C_KILL_ENABLE(sel->info.uses_kill);
switch (sel->info.properties[TGSI_PROPERTY_FS_DEPTH_LAYOUT]) {
case TGSI_FS_DEPTH_LAYOUT_GREATER:
sel->db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_GREATER_THAN_Z);
break;
case TGSI_FS_DEPTH_LAYOUT_LESS:
sel->db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_LESS_THAN_Z);
break;
}
if (sel->info.stage == MESA_SHADER_FRAGMENT) {
switch (sel->info.base.fs.depth_layout) {
case FRAG_DEPTH_LAYOUT_GREATER:
sel->db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_GREATER_THAN_Z);
break;
case FRAG_DEPTH_LAYOUT_LESS:
sel->db_shader_control |= S_02880C_CONSERVATIVE_Z_EXPORT(V_02880C_EXPORT_LESS_THAN_Z);
break;
default:;
}
/* Z_ORDER, EXEC_ON_HIER_FAIL and EXEC_ON_NOOP should be set as following:
*
* | early Z/S | writes_mem | allow_ReZ? | Z_ORDER | EXEC_ON_HIER_FAIL | EXEC_ON_NOOP