点文件不生成-view-isle-dogs选项

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了点文件不生成-view-isle-dogs选项相关的知识,希望对你有一定的参考价值。

在尝试使用LLVM(从启用了调试模式的源构建)中查看在指令选择阶段生成的SelectionDag节点时,我使用的是以下命令,该命令不会创建Graphviz DOT文件。

llc -view-isel-dags sum.bc

相反,它正在创建sum.s文件。这里有什么我想念的吗?

sum.c

int sum(int x, int y) {
  return x+y;
}

sum.bc

$ clang -emit-llvm sum.c -c -o sum.bc

LLVM信息

$ llc -help-hidden | grep 'view-isel' -view-isel-dags - Pop up a window to show isel dags as they are selected

$ llvm-config --build-mode
Debug
答案

猜测问题是默认情况下启用的快速指令选择。

$ llc -debug sum.ll

跳过函数和上的'X86 DAG-> DAG指令选择'

更改函数和之前的优化级别:-O2;之后:-O0

FastISel已启用

禁用fastIsel解决了这个问题。

$ llc -fast-isel=false -view-dag-combine1-dags sum.ll

以上是关于点文件不生成-view-isle-dogs选项的主要内容,如果未能解决你的问题,请参考以下文章

Odoo8中“更多”下拉菜单选项指定后台执行代码

g++编译选项

eclipse怎么生成注释文档

代码生成器生成单表时说表在数据库中不存在是啥原因

刚用eclipse发现点不出方法和对象,点后面也不出现了的原因是啥?

用Global Mapper如何操作把点文件生成*.dem格式的DEM,谢谢!