<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/74368>74368</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            clang can't optimize calls to nexttoward()
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          nico
      </td>
    </tr>
</table>

<pre>
    ```
% cat test.cc
#include <math.h>
int main() {
    float f = nexttoward(1.0, 0.0);
    return f;
}
% out/gn/bin/clang -c test.cc -O2 -S -o - | grep nexttow
        bl      _nexttoward
```

Expected: No call to nexttoward
Actual: Call

gcc can optimize it: https://godbolt.org/z/1jPbcfbxx
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxcUk1vm0AQ_TXDZQRaZiHAgYNjh2NbqT-gWpYBb7RmLXZo3fz6Cpw0kSXESPPx5s3bZ2J008zcQvkM5Skxq5zD0s7OhqQPw98WntT7p06gDkAlWiMoHCWz9iOp3Wz9OjCCPl6MnLMz6Jd70c2CF-NmoBqoQaie73lExNEHIzgi6BPOfBMJf8wyANV5poCOqLbQgP4ysrCsy4zj_yRUp09qYRWgbpqBun5b2Vlv5glT-0EY0--E6U9MA6YI1RGnha8fu99xVNN7UM2vL4zuhQcp9v_L7cpWeAB9wG8BrfEeJeDj7MHKavzWdDTefwWYrEVrZgxXcRf3xuhkazuLXCPoA1C3XRSGPnjJwjIBdW9AXf76o7djf7slQ6uHRjcm4TavVF6RVqpKzi2XXJtKjSUPo21U3te6IC6KPH9iGvoycS0p0jmpglSpVJWNPNR1rmrOCza6LKBQfDHOZ97_vmy7Exfjym1V6Kc68aZnH3fjEO06A9HmoaXd-tN-nSIUyrso8RNBnHhu789izQxUyefpm3rxQb7dNsm6-PZBEifntc9suAB1G_x7SK9LeGW7-WBnG4G6nfC_AAAA___b8N42">