Ada*_*min 5 static-analysis compiler-optimization
我进行了大量搜索以找到过程间分析和过程内分析之间的区别。据我所知,过程内分析适用于单个过程,而过程间分析适用于所有过程。我仍然不清楚,更具体地说,这种过程间分析是如何应用于所有过程的?
有人能给我解释一下吗?
程序间(想想互联网,网络的网络,与内部网,单个网络)分析是对多个函数进行操作的分析,例如以下内部生产优化:
function main() {
return getConstant() * rand()
}
function getConstant() {
return 42
}
Run Code Online (Sandbox Code Playgroud)
可以内联到:
function main() {
return 42 * rand()
}
Run Code Online (Sandbox Code Playgroud)
以及以下Intra程序优化:
function getNrOfSecondsInWeek() {
secondsAMinute := 60
minutesAnHour := 60
hoursADay := 24
daysAWeek := 7
return secondsAMinute * minutesAnHour * hoursADay * daysAWeek;
}
Run Code Online (Sandbox Code Playgroud)
可以内联到:
function getNrOfSecondsInWeek() {
return 604800;
}
Run Code Online (Sandbox Code Playgroud)