LLVM IR Lambda函数

agg212

我已经使用clang ++ 3.4将C ++ 11程序(test.cpp)编译为LLVM IR文件(test.ll)。该程序包含几个C ++ lambda函数,我想知道是否可以使用如下技术仅提取lambda函数的IR:

Module *mod = ParseIRFile("test.ll", *err, ctx);
for (Module::iterator f = mod->begin(); f != mod->end(); ++f) {
    //is there some function like isLambdaFunction()?
    if (f->isLambdaFunction()) { 
        cout << "Lambda Function" << endl;
    }
}
伊丽·班德斯基(Eli Bendersky)

不。在LLVM IR中没有lambda函数的概念。Clang使用方法AFAIK将lambda降低为结构。

您可以从Clang的AST中获得此功能,但不能从LLVM IR中获得此功能。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章