Mesa (master): aco: fix a hardware bug for MRTZ exports on GFX6
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Fri Jan 24 18:51:18 UTC 2020
Module: Mesa
Branch: master
Commit: b9cc50fbce4c5aeab035d855c9368e24e2ed2d20
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=b9cc50fbce4c5aeab035d855c9368e24e2ed2d20
Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date: Thu Jan 23 17:51:09 2020 +0100
aco: fix a hardware bug for MRTZ exports on GFX6
GFX6 (except OLAND and HAINAN) has a bug that it only looks at
the X writemask component.
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Rhys Perry <pendingchaos02 at gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/merge_requests/3533>
---
src/amd/compiler/aco_instruction_selection.cpp | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/src/amd/compiler/aco_instruction_selection.cpp b/src/amd/compiler/aco_instruction_selection.cpp
index 7e3226635a3..60344d299ca 100644
--- a/src/amd/compiler/aco_instruction_selection.cpp
+++ b/src/amd/compiler/aco_instruction_selection.cpp
@@ -8364,6 +8364,15 @@ static void export_fs_mrt_z(isel_context *ctx)
}
}
+ /* GFX6 (except OLAND and HAINAN) has a bug that it only looks at the X
+ * writemask component.
+ */
+ if (ctx->options->chip_class == GFX6 &&
+ ctx->options->family != CHIP_OLAND &&
+ ctx->options->family != CHIP_HAINAN) {
+ enabled_channels |= 0x1;
+ }
+
bld.exp(aco_opcode::exp, values[0], values[1], values[2], values[3],
enabled_channels, V_008DFC_SQ_EXP_MRTZ, compr);
}
More information about the mesa-commit
mailing list