llvm/llvm-project

scalbln(x, n), scalbn(x, n), ldexp(x, n) are not folded at the compilation time when (x, n) is constant

Open

#112,631 opened on Oct 16, 2024

View on GitHub
 (8 comments) (0 reactions) (2 assignees)C++ (10,782 forks)batch import
floating-pointgood first issuellvm:optimizationsmissed-optimization

Repository metrics

Stars
 (26,378 stars)
PR merge metrics
 (Avg merge 1d 2h) (1,000 merged PRs in 30d)

Description

Consider the following example. https://godbolt.org/z/54xsG8WTr

#include <cmath>

double f1() {
  return std::scalbln(3.0, 4);
}

double f2() {
  return std::scalbn(3.0, 4);
}

double f3() {
  return std::ldexp(3.0, 4);
}

Contributor guide