赞助商

xcode – 深静态分析与浅静态分析有什么区别?

发布时间:2019-06-11 发布网站:脚本之家
脚本之家收集整理的这篇文章主要介绍了xcode – 深静态分析与浅静态分析有什么区别?脚本之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
浅层和深层静态分析有什么区别?我现在正在使用 Xcode,并注意到有一个构建设置区分了两者.

在一般情况下我对此很好奇,我也想知道Clang如何实现这种区别有什么不同.

我尝试了一些Google-foo,我找不到答案.我尝试通过Apple和Clang文档来看看他们是否解释了但我没有找到任何东西.希望我没有错过一个明显的石头推翻我的搜索.

解决方法

(1)
来自苹果公司的Evan Cheng(编译技术)的 talk给出了一个指示(见第157/158页):

>浅 – 快速分析
>深入 – 更彻底的分析

建议:始终以深度模式进行分析,作为资格认证的一部分

(2)
您可以在analyzerOptions的源代码中找到更多详细信息
有UserModeKind变量:

00184   /// \brief Describes the kinds for high-level analyzer mode.
00185   enum UserModeKind {
00186     UMK_NotSet = 0,00187     /// Perform shallow but fast analyzes.
00188     UMK_Shallow = 1,00189     /// Perform deep analyzes.
00190     UMK_Deep = 2
00191   };
00192 
00193   /// Controls the high-level analyzer mode,which influences the default 
00194   /// settings for some of the lower-level config options (such as IPAMode).
00195   /// \sa getUserMode
00196   UserModeKind UserMode;
00197 
00198   /// Controls the mode of inter-procedural analysis.
00199   IPAKind IPAMode;

在不深入研究代码的情况下,您会看到一个区别是(耗时的)程序间分析的停用…

总结

以上是脚本之家为你收集整理的xcode – 深静态分析与浅静态分析有什么区别?全部内容,希望文章能够帮你解决xcode – 深静态分析与浅静态分析有什么区别?所遇到的程序开发问题。

如果觉得脚本之家网站内容还不错,欢迎将脚本之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:76874919,请注明来意。
标签: