我正在进行一个项目,在这个项目中,我必须编写代码,以便将LLVM转换为类似于C的语言。这种语言的构造与C非常相似。在做了一些调查之后,我发现到目前为止,LLVM的3.0版本存在一个名为CBackend.cpp的文件,负责将LLVM转换为C代码。我要检查的是在我的LLVM输入文件上运行这个CBackend.cpp文件并生成C代码。
它的命令是: llc -march=c -o code.c code.ll
其中,code.ll文件是包含输入llvm的输入文件,code.c是包含结果C代码的输出文件。
我要面对的是,我在我的ubuntu系统上安装了LLVM版本3.4svn,并且在这个版本中没有CBackend.cpp文件,因为该文件已经升级到CppBackend.cpp (它将LLVM转换为C++)。我可以使用哪个命令在我的LLVM输入文件上运行这个CBackend.cpp文件以获得LLVM 3.4svn版本中相应的C代码?
提前谢谢。
发布于 2013-10-16 19:53:16
C后端在3.1版中被删除,因为它没有被维护,并开始开发代码腐烂,成为一个负担。由于没有维护人员上前,它被从树上移走了。来自3.1发行说明
C后端已被移除。它有许多问题,以至于无法编译任何非平凡的程序。
2012年8月,一个线程在llvmdev上讨论了恢复C后端的问题,但我不认为它最终会有什么用处。
您仍然可以下载LLVM3.0版本(从发布页面),构建它并查看C后端的实际运行情况,研究它的代码等等。为了您的特定目的-查看代码并确定它的工作方式,3.0 C后端应该足够好。
https://stackoverflow.com/questions/19411568
复制相似问题