[PATCH] D97125: Stop traping on sNaN in __builtin_isinf

Thomas Preud'homme via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Feb 20 14:17:24 PST 2021


thopre created this revision.
thopre added reviewers: kpn, efriedma, mibintc, sepavloff, rjmccall.
Herald added a subscriber: pengfei.
thopre requested review of this revision.
Herald added a project: clang.

__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.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D97125

Files:
  clang/lib/CodeGen/CGBuiltin.cpp
  clang/test/CodeGen/X86/strictfp_builtins.c
  clang/test/CodeGen/aarch64-strictfp-builtins.c
  clang/test/CodeGen/strictfp_builtins.c

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D97125.325243.patch
Type: text/x-patch
Size: 11234 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210220/358851b6/attachment.bin>


More information about the cfe-commits mailing list