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

    <tr>
        <th>Summary</th>
        <td>
            [AArch64][compiler-rt] floating point exception is not raised when comparing (long double)NAN by < operator
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

    <tr>
      <th>Reporter</th>
      <td>
          utsumi-fj
      </td>
    </tr>
</table>

<pre>
    When investigating #59924, another issue was found. This occurs when compiling with `--rtlib=compiler-rt`.
The "invalid" floating point exception is not raised when comparing (long double)NAN by < operator as follows.

```
$ clang --version
clang version 16.0.0 (https://github.com/llvm/llvm-project.git 60b98979241151f8d6ec8af9ebc4da421f4a0258)
Target: aarch64-unknown-linux-gnu
Thread model: posix
InstalledDir: /work03/lang/llvm/llvm/main/bin
$ cat test.c
#include <stdio.h>
#include <math.h>
#include <fenv.h>

int main() {
#pragma STDC FENV_ACCESS ON

  long double nan128 = (long double)NAN;
  if (nan128 < 1.0)
    puts("test");

  if (fetestexcept(FE_INVALID))
    puts("FE_INVALID");

  return 0;
}
$ clang test.c -lm
$ ./a.out
FE_INVALID
$ clang test.c -lm --rtlib=compiler-rt
$ ./a.out
$
```

It is expected that "FE_INVALID" is printed.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0VE2PozgQ_TXmUgLZxhA4cEiHRmpplT10a_Y4MtiAZxwb2Sbp-fcrIOnOjNKHPawUOaJeffn5VXHv1WCkrFD2hLI64nMYravm4OeTivsfUWvFr-qfURpQ5ix9UAMPygyAaJqVJWWIHoAbG0bpQHk_S7hwD72djUjgbVQebNfNzsNlydHZ06T0En9RYQSU4zh2QasWpfWGSRe7gHKcIFwjvH8bJSBKlTlzrQSiFHpttw4mq0wA-d7JKShrQHkwNoDjykvxWY67rd1CWzOAsHOrJaLlcX-E9heg9AB2ko4H62BtXGt78dfq1zPH19_2SRl0mpsB4vgsnVfWbMBmvJqA5AlO8FJ4DGHyKN0j2iDaDCqMc5t09oRoo_X59hdPzv6QXUgGFSDHbVmUu5IyQjLSFyKXXcH7UrYdE5xR0jOOaVYgWl554m6QAaV74Nx1Y87i2fw09mJircz8Hg9mvhHqJBdwskLqxX2yXr1v0IvxgWstRa3cAiHaXKz7idOlQ26G3_tFtDlxZRBtWmXumOEBgvQh6W62VJlOz0IuXPsglE1GlD4_Qk88jF-CvTTne3A9FwVsXSxUANo9fYROjg8nDq9v9QGa5-O37_vD4fn1Ff4-3icAuJMFGG4ILQCl9UPBoPTpFqX6xePD_wAkwR-PAQAwzcGvXdGFDUTpgt7if8_Sy8VlEzKiRfP8_eX4bf_XS72EPM557_Mws5NhdgbwJ7Cr_5Tv9kwQ69MnkiDa8MTOYTPd1fkyGB6P8FcpEWWPx2rTYFjmWL5PsgtSQBh5gD_vu3hMTpkgRRKJKhVlWvJIViTfMULyImPRWJWYsbwoe5FS3hYFzlhHdylhZU84lVkaqYpimmJCSlzQXcoSTmTJCRYdE6Toe4EYlieudLKoPbFuiNb9VuWYMBJp3krt17VJqZGXbfktr5HVkavWiW7nwSOGtfLBf2YJKuh13-7366SirEbZ0z11Wf0_brlodrr6bysJ0Wa9nUe0WW__bwAAAP__SjXcwg">