Change the flag to DBG_HYPERZ and reverse the logic
so setting the flag enabled the feature.  This disables
hyperz on r600g and radeonsi by default.  It can be
enabled by setting the env var.  There are just too
many issues with certain apps so leave it disabled for
now until we sort out the issues with the problematic
apps.

Bugs:
https://bugs.freedesktop.org/show_bug.cgi?id=58660
https://bugs.freedesktop.org/show_bug.cgi?id=64471
https://bugs.freedesktop.org/show_bug.cgi?id=66352
https://bugs.freedesktop.org/show_bug.cgi?id=68799
https://bugs.freedesktop.org/show_bug.cgi?id=72685
https://bugs.freedesktop.org/show_bug.cgi?id=73088
https://bugs.freedesktop.org/show_bug.cgi?id=74428
https://bugs.freedesktop.org/show_bug.cgi?id=74803
https://bugs.freedesktop.org/show_bug.cgi?id=74863
https://bugs.freedesktop.org/show_bug.cgi?id=74892
https://bugzilla.kernel.org/show_bug.cgi?id=70411

Signed-off-by: Alex Deucher <alexander.deuc...@amd.com>
Cc: "10.1" "10.0" <mesa-sta...@lists.freedesktop.org>
---
 src/gallium/drivers/r600/r600_pipe.c          | 4 ++--
 src/gallium/drivers/radeon/r600_pipe_common.c | 2 +-
 src/gallium/drivers/radeon/r600_pipe_common.h | 2 +-
 src/gallium/drivers/radeon/r600_texture.c     | 2 +-
 4 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/gallium/drivers/r600/r600_pipe.c 
b/src/gallium/drivers/r600/r600_pipe.c
index 796f0f5..8ea192a 100644
--- a/src/gallium/drivers/r600/r600_pipe.c
+++ b/src/gallium/drivers/r600/r600_pipe.c
@@ -584,8 +584,8 @@ struct pipe_screen *r600_screen_create(struct radeon_winsys 
*ws)
                rscreen->b.debug_flags |= DBG_COMPUTE;
        if (debug_get_bool_option("R600_DUMP_SHADERS", FALSE))
                rscreen->b.debug_flags |= DBG_FS | DBG_VS | DBG_GS | DBG_PS | 
DBG_CS;
-       if (!debug_get_bool_option("R600_HYPERZ", TRUE))
-               rscreen->b.debug_flags |= DBG_NO_HYPERZ;
+       if (debug_get_bool_option("R600_HYPERZ", FALSE))
+               rscreen->b.debug_flags |= DBG_HYPERZ;
        if (!debug_get_bool_option("R600_LLVM", TRUE))
                rscreen->b.debug_flags |= DBG_NO_LLVM;
 
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.c 
b/src/gallium/drivers/radeon/r600_pipe_common.c
index 7af8124..dbca157 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.c
+++ b/src/gallium/drivers/radeon/r600_pipe_common.c
@@ -137,7 +137,7 @@ static const struct debug_named_value 
common_debug_options[] = {
        { "ps", DBG_PS, "Print pixel shaders" },
        { "cs", DBG_CS, "Print compute shaders" },
 
-       { "nohyperz", DBG_NO_HYPERZ, "Disable Hyper-Z" },
+       { "hyperz", DBG_HYPERZ, "Enable Hyper-Z" },
        /* GL uses the word INVALIDATE, gallium uses the word DISCARD */
        { "noinvalrange", DBG_NO_DISCARD_RANGE, "Disable handling of 
INVALIDATE_RANGE map flags" },
 
diff --git a/src/gallium/drivers/radeon/r600_pipe_common.h 
b/src/gallium/drivers/radeon/r600_pipe_common.h
index 7193a0f..2fbc6a3 100644
--- a/src/gallium/drivers/radeon/r600_pipe_common.h
+++ b/src/gallium/drivers/radeon/r600_pipe_common.h
@@ -83,7 +83,7 @@
 #define DBG_PS                 (1 << 11)
 #define DBG_CS                 (1 << 12)
 /* features */
-#define DBG_NO_HYPERZ          (1 << 13)
+#define DBG_HYPERZ             (1 << 13)
 #define DBG_NO_DISCARD_RANGE   (1 << 14)
 /* The maximum allowed bit is 15. */
 
diff --git a/src/gallium/drivers/radeon/r600_texture.c 
b/src/gallium/drivers/radeon/r600_texture.c
index 356e0af..2cfab51 100644
--- a/src/gallium/drivers/radeon/r600_texture.c
+++ b/src/gallium/drivers/radeon/r600_texture.c
@@ -596,7 +596,7 @@ r600_texture_create_object(struct pipe_screen *screen,
        if (rtex->is_depth) {
                if (!(base->flags & (R600_RESOURCE_FLAG_TRANSFER |
                                     R600_RESOURCE_FLAG_FLUSHED_DEPTH)) &&
-                   !(rscreen->debug_flags & DBG_NO_HYPERZ)) {
+                   (rscreen->debug_flags & DBG_HYPERZ)) {
 
                        r600_texture_allocate_htile(rscreen, rtex);
                }
-- 
1.8.3.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to