[llvm] [ObjC] Increase depth limit to MayAutorelease to 16 (PR #83743)

via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 3 13:40:13 PST 2024


https://github.com/AtariDreams created https://github.com/llvm/llvm-project/pull/83743

This should be more than large enough to cover pretty much any possible sane situation and case.

>From f1e60b5bb55f3b11c06d363e5b3bede4f1a0230d Mon Sep 17 00:00:00 2001
From: Rose <83477269+AtariDreams at users.noreply.github.com>
Date: Sun, 3 Mar 2024 16:39:46 -0500
Subject: [PATCH] [ObjC] Increase depth limit to MayAutorelease to 16

This should be more than large enough to cover pretty much any possible sane situation and case.
---
 llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp b/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp
index dceb2ebb1863e7..9b94faff2308e7 100644
--- a/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp
+++ b/llvm/lib/Transforms/ObjCARC/ObjCARCAPElim.cpp
@@ -51,7 +51,7 @@ bool MayAutorelease(const CallBase &CB, unsigned Depth = 0) {
         if (const CallBase *JCB = dyn_cast<CallBase>(&I))
           // This recursion depth limit is arbitrary. It's just great
           // enough to cover known interesting testcases.
-          if (Depth < 3 && !JCB->onlyReadsMemory() &&
+          if (Depth < 16 && !JCB->onlyReadsMemory() &&
               MayAutorelease(*JCB, Depth + 1))
             return true;
     }



More information about the llvm-commits mailing list