Commit Graph

7 Commits

Author SHA1 Message Date
Thomas Preud'homme f60b35340f Stop traping on sNaN in __builtin_isinf
__builtin_isinf currently generates a floating-point compare operation
which triggers a trap when faced with a signaling NaN in StrictFP mode.
This commit uses integer operations instead to not generate any trap in
such a case.

Reviewed By: mibintc

Differential Revision: https://reviews.llvm.org/D97125
2021-03-15 15:38:08 +00:00
Thomas Preud'homme 52bfe6605a Add __builtin_isnan(__fp16) testcase
Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D97777
2021-03-04 13:03:48 +00:00
Thomas Preud'homme 6d6e7132f9 Revert "Add __builtin_isnan(__fp16) testcase"
This reverts commit e77b5c40d5 because it
fails without 1b6eb56aa0.
2021-03-04 12:18:03 +00:00
Thomas Preud'homme b7aeece47c Revert "Stop traping on sNaN in __builtin_isinf"
This reverts commit 1b6eb56aa0 because the
invert logic for isfinite is incorrect.
2021-03-04 12:07:35 +00:00
Thomas Preud'homme e77b5c40d5 Add __builtin_isnan(__fp16) testcase
Reviewed By: rjmccall

Differential Revision: https://reviews.llvm.org/D97777
2021-03-02 21:01:51 +00:00
Thomas Preud'homme 1b6eb56aa0 Stop traping on sNaN in __builtin_isinf
__builtin_isinf currently generates a floating-point compare operation
which triggers a trap when faced with a signaling NaN in StrictFP mode.
This commit uses integer operations instead to not generate any trap in
such a case.

Reviewed By: mibintc

Differential Revision: https://reviews.llvm.org/D97125
2021-03-02 15:54:56 +00:00
Thomas Preud'homme 00a62547da Stop traping on sNaN in __builtin_isnan
__builtin_isnan currently generates a floating-point compare operation
which triggers a trap when faced with a signaling NaN in StrictFP mode.
This commit uses integer operations instead to not generate any trap in
such a case.

Reviewed By: kpn

Differential Revision: https://reviews.llvm.org/D95948
2021-02-05 18:28:48 +00:00