CLang LLVM将DAG DOT文件写入当前目录

时间:2016-01-01 02:48:22

标签: unix clang llvm dot directed-acyclic-graphs

我已成功生成LLVM LLC工具输出的DAG DOT文件,方法是llc -view-dag-combine1-dags src.llclang -S -emit-llvm src.c开始定位我的IR生成代码 但是,它默认将输出DOT文件写入临时目录:

  

书写   ' /var/folders/yr/bkw72rn11p7454jkmnnn7p780000gn/T/sunit-dag.foo:entry-b6411e.dot' ...   完成。试着打开'程序...记得擦除图形文件:   /var/folders/yr/bkw72rn11p7454jkmnnn7p780000gn/T/sunit-dag.foo:entry-b6411e.dot

我尝试了太多的变通方法,即使尝试列出,排序和复制此临时目录中的最新修改文件,也可以通过运行一个生成命令( 未知数量的文件 )所以我的临时解决方案失败了!

问题
如何将这些文件重定向到我当前的目录? 我会欢迎任何答案,甚至是变通方法。

注意: Clang,LLVM,LLC版本:3.7

提前致谢。

1 个答案:

答案 0 :(得分:2)

简短回答:你不能。

长答案:lib / Support / GraphWriter.cpp中有llvm :: createGraphFilename()例程,它负责图形文件名,并且无条件地创建临时文件。因此,您需要更改此功能并重新编译LLVM以获得所需的功能。