diff options
| author | Matt Arsenault <Matthew.Arsenault@amd.com> | 2023-07-04 12:50:41 -0400 |
|---|---|---|
| committer | Matt Arsenault <Matthew.Arsenault@amd.com> | 2023-07-07 08:15:09 -0400 |
| commit | 4f9aad964f4a8fb364f8069eca1825865ca85b80 (patch) | |
| tree | 1ae9cfb3bdf7da8e6d912def0921f08d09d3d80b /clang/lib/CodeGen/CodeGenModule.cpp | |
| parent | d362aab2432dd494b0f8ba214bcbdf7d07003c27 (diff) | |
InstCombine: Fold ldexp(ldexp(x, a), b) -> ldexp(x, a + b)
The problem here is overflow or underflow which would have occurred in
the inner operation, which the exponent offsetting avoids. We can do
this if we know the two exponents are in the same direction, or
reassoc flags allow unsafe reassociates.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions
