[llvm] [ValueTracking] Make the MaxAnalysisRecursionDepth overridable (PR #137721)

Jeffrey Byrnes via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 6 14:37:16 PDT 2025


jrbyrnes wrote:

The latest switches the depth parameter such that it is now the upper limit instead of the lower limit. This touches a lot of code which makes the PR a bit heavy unfortunately. By default these parameters are set to `MaxAnalysisRecursionDepth`=6 . This allows clients to increase the depth limit for important optimizations. There is no cycle protection, so it is possible for clients to generate huge recursion stacks by setting the depth limit.

This is NFCI. In order to make this NFC for `SimplifyDemandedVectorElts` (which uses `SimplifyDemandedVectorEltsDepthLimit`), I've split this up into `SimplifyDemandedVectorElts` which calls `SimplifyDemandedVectorEltsInternal` and changed the signature of `SimplifyDemandedVectorElts` to not take a depth parameter since it does not use a user-provided upper limit.

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


More information about the llvm-commits mailing list