diff options
author | Michael Flanders <flanders.michaelk@gmail.com> | 2024-05-06 08:05:22 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-06 09:05:22 -0400 |
commit | ecfb5d9951554d8bdb6a499c958f48cc35f78a88 (patch) | |
tree | 1dbc9ee877952d175548146d490e65d595adb3cc /llvm/lib/Bitcode/Reader/BitcodeReader.cpp | |
parent | d751e407def4e1540ae0af12a179ce4f2a8f676c (diff) | |
download | llvm-ecfb5d9951554d8bdb6a499c958f48cc35f78a88.zip llvm-ecfb5d9951554d8bdb6a499c958f48cc35f78a88.tar.gz llvm-ecfb5d9951554d8bdb6a499c958f48cc35f78a88.tar.bz2 |
[libc][math] fix loose except check in `{EXPECT,ASSERT}_FP_EXCEPTION` macros (#88816)
Adds more FP test macros for the upcoming test adds for #61092 and the
issues opened from it: #88768, #88769, #88770, #88771, #88772.
Fix bug in `{EXPECT,ASSERT}_FP_EXCEPTION`. `EXPECT_FP_EXCEPTION(0)`
seems to be used to test that an exception did not happen, but it always
does `EXPECT_GE(... & 0, 0)` which never fails.
Update and refactor tests that break after the above bug fix. An
interesting way things broke after the above change is that
`ForceRoundingMode` and `quick_get_round()` were raising the inexact
exception, breaking a lot of the `atan*` tests.
The changes for all files other than `FPMatcher.h` and
`libc/test/src/math/smoke/RoundToIntegerTest.h` should have the same
semantics as before. For `RoundToIntegerTest.h`, lines 56-58 before the
changes do not always hold since this test is used for functions with
different exception and errno behavior like `lrint` and `lround`. I've
deleted those lines for now, but tests for those cases should be added
for the different nearest int functions to account for this.
Adding @nickdesaulniers for review.
Diffstat (limited to 'llvm/lib/Bitcode/Reader/BitcodeReader.cpp')
0 files changed, 0 insertions, 0 deletions