[clang] [analyzer] Move `CTUPhase1InliningMode` option to String analyzer options category (PR #91932)
via cfe-commits
cfe-commits at lists.llvm.org
Mon May 13 00:56:02 PDT 2024
llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT-->
@llvm/pr-subscribers-clang
Author: JOSTAR (shenjunjiekoda)
<details>
<summary>Changes</summary>
The `CTUPhase1InliningMode`option was originally placed under Unsigned analyzer options, but its value is a string.
This move aligns the option with its actual type.
---
Full diff: https://github.com/llvm/llvm-project/pull/91932.diff
1 Files Affected:
- (modified) clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def (+16-16)
``````````diff
diff --git a/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def b/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
index 2fc825c2af9c3..f008c9c581d95 100644
--- a/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
+++ b/clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
@@ -413,22 +413,6 @@ ANALYZER_OPTION(
"analysis is too low, it is meaningful to provide a minimum value that "
"serves as an upper bound instead.", 10000)
-ANALYZER_OPTION(
- StringRef, CTUPhase1InliningMode, "ctu-phase1-inlining",
- "Controls which functions will be inlined during the first phase of the ctu "
- "analysis. "
- "If the value is set to 'all' then all foreign functions are inlinied "
- "immediately during the first phase, thus rendering the second phase a noop. "
- "The 'ctu-max-nodes-*' budge has no effect in this case. "
- "If the value is 'small' then only functions with a linear CFG and with a "
- "limited number of statements would be inlined during the first phase. The "
- "long and/or nontrivial functions are handled in the second phase and are "
- "controlled by the 'ctu-max-nodes-*' budge. "
- "The value 'none' means that all foreign functions are inlined only in the "
- "second phase, 'ctu-max-nodes-*' budge limits the second phase. "
- "Value: \"none\", \"small\", \"all\".",
- "small")
-
ANALYZER_OPTION(
unsigned, RegionStoreSmallStructLimit, "region-store-small-struct-limit",
"The largest number of fields a struct can have and still be considered "
@@ -478,6 +462,22 @@ ANALYZER_OPTION(
"where to look for those alternative implementations (called models).",
"")
+ANALYZER_OPTION(
+ StringRef, CTUPhase1InliningMode, "ctu-phase1-inlining",
+ "Controls which functions will be inlined during the first phase of the ctu "
+ "analysis. "
+ "If the value is set to 'all' then all foreign functions are inlinied "
+ "immediately during the first phase, thus rendering the second phase a noop. "
+ "The 'ctu-max-nodes-*' budge has no effect in this case. "
+ "If the value is 'small' then only functions with a linear CFG and with a "
+ "limited number of statements would be inlined during the first phase. The "
+ "long and/or nontrivial functions are handled in the second phase and are "
+ "controlled by the 'ctu-max-nodes-*' budge. "
+ "The value 'none' means that all foreign functions are inlined only in the "
+ "second phase, 'ctu-max-nodes-*' budge limits the second phase. "
+ "Value: \"none\", \"small\", \"all\".",
+ "small")
+
ANALYZER_OPTION(
StringRef, CXXMemberInliningMode, "c++-inlining",
"Controls which C++ member functions will be considered for inlining. "
``````````
</details>
https://github.com/llvm/llvm-project/pull/91932
More information about the cfe-commits
mailing list