[llvm] [ArgPromotion] Handle pointer arguments of recursive calls (PR #78735)

Vedant Paranjape via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 13 14:25:44 PDT 2024


================
@@ -420,11 +420,31 @@ doPromotion(Function *F, FunctionAnalysisManager &FAM,
   return NF;
 }
 
+/// Returns true if the Ptr is loaded by any Load in the vector of
+/// Loads, and if the Loaded value is not a pointer.
+static bool checkIfPointerIsDereferenced(SmallVector<LoadInst *, 16> &Loads,
----------------
vedantparanjape-amd wrote:

This is still needed to prevent the failure in (pr42028-recursion.ll) case, as it is not self recursive. But, if I add the self recursive check I mentioned above, then it would be okay.

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


More information about the llvm-commits mailing list