[PATCH] D155369: [clang][Interp] Implement __builtin_isnan()

Timm Bäder via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Sat Jul 15 09:06:01 PDT 2023


tbaeder marked 2 inline comments as done.
tbaeder added inline comments.


================
Comment at: clang/lib/AST/Interp/Function.h:180
+    // FIXME: Is there a better way to get this information?
+    if (getName() == "__builtin_isnan")
+      return true;
----------------
cor3ntin wrote:
> tbaeder wrote:
> > cor3ntin wrote:
> > > You can compare getBuiltinID(), which is better than using strings, it's what we seem to be doing elsewhere
> > Yeah but that still sucks. Is there no way to query whether the builtin has `t` set ("signature is meaningless, use custom typechecking"), regardless of the ID or name?
> `AstContext.BuiltinInfo.hasCustomTypechecking(F->getBuiltinID()))` seems to do that but i have no clue if you could use it on all functions without running into issues
> 
That works indeed, thanks.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D155369/new/

https://reviews.llvm.org/D155369



More information about the cfe-commits mailing list