diff options
author | Georg Lehmann <dadschoorse@gmail.com> | 2023-03-01 15:31:23 +0100 |
---|---|---|
committer | Marge Bot <emma+marge@anholt.net> | 2023-03-02 10:59:05 +0000 |
commit | ed349951cb78b59afa53a2fd4a2206ecc883e3bc (patch) | |
tree | 304e83e4d07bac37f882f693201a88b53044c2ba /src/amd/compiler/aco_optimizer.cpp | |
parent | f19fccd9f8c368336a60ecfe94d3ef9565bc26dc (diff) | |
download | mesa-ed349951cb78b59afa53a2fd4a2206ecc883e3bc.tar.gz |
aco: mark mad definition as precise if the mul/add were precise
Reviewed-by: Rhys Perry <pendingchaos02@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/20587>
Diffstat (limited to 'src/amd/compiler/aco_optimizer.cpp')
-rw-r--r-- | src/amd/compiler/aco_optimizer.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/amd/compiler/aco_optimizer.cpp b/src/amd/compiler/aco_optimizer.cpp index 2043990fc79..d9ce6ebe0f0 100644 --- a/src/amd/compiler/aco_optimizer.cpp +++ b/src/amd/compiler/aco_optimizer.cpp @@ -4475,6 +4475,8 @@ combine_instruction(opt_ctx& ctx, aco_ptr<Instruction>& instr) instr = std::move(mad); } instr->definitions[0] = add_instr->definitions[0]; + instr->definitions[0].setPrecise(add_instr->definitions[0].isPrecise() || + mul_instr->definitions[0].isPrecise()); /* mark this ssa_def to be re-checked for profitability and literals */ ctx.mad_infos.emplace_back(std::move(add_instr), mul_instr->definitions[0].tempId()); |