Module: Mesa
Branch: master
Commit: b97cc41aa203fd9fb9f5cf5f5aa7fd40f567917d
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=b97cc41aa203fd9fb9f5cf5f5aa7fd40f567917d

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>

---

 src/amd/llvm/ac_llvm_helper.cpp | 9 ---------
 1 file changed, 9 deletions(-)

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

Reply via email to