2012-11-11 44 views
2

如何在LLVM IR中找到循环感应变量的起始和结束值?如何在LLVM IR中找到循环开始和结束

for(int i = start; i < end; i++) { 
    A[i] = 0; 
} 

想通过调用 “零(A,开始,结束)”

还是更铿锵AST进行更换?叮当中是否有设施可以做这种改变?

+4

看看LLVM逝者如斯'LoopSimplify','LoopUnroll'和依赖于'LoopInfo'分析通了别人。后者应该为您的转换提供足够的信息。尽管对于更复杂的数组索引依赖性分析,除了现有的LLVM特性之外,您还需要像“Polly”之类的东西。 –

回答