summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarek Olšák <marek.olsak@amd.com>2018-10-01 14:29:20 -0400
committerJuan A. Suarez Romero <jasuarez@igalia.com>2018-10-02 09:39:47 +0200
commit3e1b0a085347997c9482501f11fd048c28f4e0ba (patch)
treecf97eb4ee1eec140012da3d9973fb8d8976b7a4d
parent3c24f60cca7f0af51094afdfbac490d425a91cb8 (diff)
radeonsi: NaN should pass kill_if
Signed-off-by: Juan A. Suarez Romero <jasuarez@igalia.com>
-rw-r--r--bin/.cherry-ignore2
-rw-r--r--src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c3
2 files changed, 4 insertions, 1 deletions
diff --git a/bin/.cherry-ignore b/bin/.cherry-ignore
index fb3038c8b36..93b0a25cfcb 100644
--- a/bin/.cherry-ignore
+++ b/bin/.cherry-ignore
@@ -13,3 +13,5 @@ c9f54486959716762e6818dabb0a73a8cd46df67 radeonsi: fix regression in indirect in
4aec44c0d9c4c0649c362199fac97efe0a3b38a4 i965/tools: 32bit compilation with meson
# pick: This commit was reverted by commit 95bb7d82ca8.
90819abb56f6b1a0cd4946b13b6caf24fb46e500 radv: fix descriptor pool allocation size
+# pick: There is a specific patch for stable branch for this commit.
+0d495bec25bd7584de4e988c2b4528c1996bc1d0 radeonsi: NaN should pass kill_if
diff --git a/src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c b/src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c
index 7042bc306c3..0d292864425 100644
--- a/src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c
+++ b/src/gallium/drivers/radeonsi/si_shader_tgsi_alu.c
@@ -36,7 +36,8 @@ static void kill_if_fetch_args(struct lp_build_tgsi_context *bld_base,
for (i = 0; i < TGSI_NUM_CHANNELS; i++) {
LLVMValueRef value = lp_build_emit_fetch(bld_base, inst, 0, i);
- conds[i] = LLVMBuildFCmp(builder, LLVMRealOGE, value,
+ /* UGE because NaN shouldn't get killed */
+ conds[i] = LLVMBuildFCmp(builder, LLVMRealUGE, value,
ctx->ac.f32_0, "");
}