具有全局归纳变量

时间:2017-02-13 06:00:17

标签: compiler-construction llvm compiler-optimization

在LLVM中,我想使用ScalarEvolution类的getSmallConstantTripCount方法分析循环行程计数。但是,当归纳变量是全局变量时,它无法获得行程计数:

int g = 0;
int main(){
    int k = 0;
    for(; g < 100; ++g)
        k++;
    return 0;
}

此外,如果在内环的范围之外定义归纳变量,它也不能获得跳闸计数(参见内循环k):

int main(){
    int k = 0;
    int g = 0;
    for(; g < 100; ++g){
        for(; k < 100; ++k);
    }
    return 0;
}

如何在这两种情况下获得旅行计数?任何想法,谢谢。

0 个答案:

没有答案