[clang] nonblocking/nonallocating attributes: 2nd pass caller/callee analysis (PR #99656)

Doug Wyatt via cfe-commits cfe-commits at lists.llvm.org
Thu Aug 29 11:57:56 PDT 2024


================
@@ -908,9 +936,9 @@ class Analyzer {
     static bool isSafeBuiltinFunction(const FunctionDecl *FD) {
       unsigned BuiltinID = FD->getBuiltinID();
       switch (BuiltinID) {
-      case 0: // not builtin
+      case 0: // Not builtin.
         return false;
-      default: // not disallowed via cases below
+      default: // Not disallowed via cases below.
         return true;
 
       // Disallow list
----------------
dougsonos wrote:

I made a pass through Builtins.td and added a number of other functions. There could still be more.

I also refactored so that the helper function synthesizes a set of effects for a builtin function, so if/when TableGen supports this, it's clearer what to do.

https://github.com/llvm/llvm-project/pull/99656


More information about the cfe-commits mailing list