diff options
author | Nikita Popov <npopov@redhat.com> | 2024-12-17 10:58:52 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-17 10:58:52 +0100 |
commit | 7c135e17fbb7178466eafce9826c896518907637 (patch) | |
tree | 2550190a5b25c761e3a987e39736c588d79927ee /clang/lib/CodeGen/CodeGenFunction.cpp | |
parent | 75b2d786734cd3fc0825fc6e20a3925d16993205 (diff) | |
download | llvm-7c135e17fbb7178466eafce9826c896518907637.zip llvm-7c135e17fbb7178466eafce9826c896518907637.tar.gz llvm-7c135e17fbb7178466eafce9826c896518907637.tar.bz2 |
[InstSimplify] Treat float binop with identity as refining (#120098)
If x is NaN, then fmul (x, 1) may produce a different NaN value.
Our float semantics explicitly permit folding fmul (x, 1) to x, but we
can't do this when we're replacing a select input, as selects are
supposed to preserve the exact bitwise value.
Fixes
https://github.com/llvm/llvm-project/pull/115152#issuecomment-2545773114.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenFunction.cpp')
0 files changed, 0 insertions, 0 deletions