标签: clang llvm abstract-syntax-tree llvm-clang llvm-ir
我想对c程序的AST进行转换,但是我需要访问为程序创建的所有AST才能进行正确的更改。 LLVM一次处理一个翻译单元,因此,我无法同时访问所有翻译单元的AST。您是否有任何建议我如何访问为程序创建的所有AST,对AST进行分析并对AST进行修改?
总结:
答案 0 :(得分:1)
您可以尝试在所有生成的.ll文件(来自clang -S -emit-llvm)上使用llvm-link创建一个大型llvm源。
此时您可以访问所有内容。