LLVM-如何将AST转换为IR [英] LLVM - How AST can be transformed to IR
本文介绍了LLVM-如何将AST转换为IR的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我知道解析器生成的AST
用于在前端生成IR。
我想知道如何解析AST,然后将其转换为IR(探测程序集或位码),
AST是树,从AST到IR转换涉及哪些步骤。
推荐答案
发射LLVM IR from Clang ASTs
发生在朗氏code gen
阶段。此阶段的代码位于lib/CodeGen/
中(相对于Clang的源根目录)。不需要解析AST,因为Clang在内存数据结构中具有AST。代码生成本质上是AST的递归遍历,它将IR发送到Module
。如果其中有任何您感兴趣的特定步骤,检查它的最佳方式是查看代码。
这篇关于LLVM-如何将AST转换为IR的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文