Module: Mesa Branch: staging/20.1 Commit: 12d23b4a08769c7875553a839b4e9cd4d9727d80 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=12d23b4a08769c7875553a839b4e9cd4d9727d80
Author: Marek Olšák <[email protected]> Date: Thu Apr 30 03:57:50 2020 -0400 Revert "ac: reassociate FP expressions for inexact instructions for radeonsi" This reverts commit cf2f3c27533d8721abed4cdd4dfb00d4d53e8a0f. It breaks shadows in Unigine Superposition. Fixes: cf2f3c27533d8721abed4cdd4dfb00d4d53e8a0f Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4837> (cherry picked from commit b97cc41aa203fd9fb9f5cf5f5aa7fd40f567917d) --- .pick_status.json | 2 +- src/amd/llvm/ac_llvm_helper.cpp | 9 --------- 2 files changed, 1 insertion(+), 10 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 7ca87624dda..8ade84022ec 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -157,7 +157,7 @@ "description": "Revert \"ac: reassociate FP expressions for inexact instructions for radeonsi\"", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "cf2f3c27533d8721abed4cdd4dfb00d4d53e8a0f" }, diff --git a/src/amd/llvm/ac_llvm_helper.cpp b/src/amd/llvm/ac_llvm_helper.cpp index 97b9a1a035a..f5383344dd4 100644 --- a/src/amd/llvm/ac_llvm_helper.cpp +++ b/src/amd/llvm/ac_llvm_helper.cpp @@ -101,11 +101,6 @@ LLVMBuilderRef ac_create_builder(LLVMContextRef ctx, */ flags.setAllowContract(); /* contract */ - /* Allow reassociation transformations for floating-point - * instructions. This may dramatically change results. - */ - flags.setAllowReassoc(); /* reassoc */ - llvm::unwrap(builder)->setFastMathFlags(flags); break; } @@ -118,13 +113,11 @@ bool ac_disable_inexact_math(LLVMBuilderRef builder) { auto *b = llvm::unwrap(builder); llvm::FastMathFlags flags = b->getFastMathFlags(); - assert(flags.allowContract() == flags.allowReassoc()); if (!flags.allowContract()) return false; flags.setAllowContract(false); - flags.setAllowReassoc(false); b->setFastMathFlags(flags); return true; } @@ -133,13 +126,11 @@ void ac_restore_inexact_math(LLVMBuilderRef builder, bool value) { auto *b = llvm::unwrap(builder); llvm::FastMathFlags flags = b->getFastMathFlags(); - assert(flags.allowContract() == flags.allowReassoc()); if (flags.allowContract() == value) return; flags.setAllowContract(value); - flags.setAllowReassoc(value); b->setFastMathFlags(flags); } _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
