小编piX*_*pRo的帖子

LLVM“指令并不支配所有用途” - 插入新指令

使用 llvm pass 插入指令时出现以下错误:

Instruction does not dominate all uses!
%add = add nsw i32 10, 2
%cmp3 = icmp ne i32 %a.01, %add
Broken module found, compilation aborted!
Run Code Online (Sandbox Code Playgroud)

我在一个位代码文件中有源代码,其片段是:

if.then:                                          ; preds = %entry
    %add = add nsw i32 10, 2
    br label %if.end
if.else:                                          ; preds = %entry
    %sub = sub nsw i32 10, 2
    br label %if.end
if.end:                                           ; preds = %if.else, %if.then
    %a.0 = phi i32 [ %add, %if.then ], [ %sub, %if.else ] 
    %a.01 = …
Run Code Online (Sandbox Code Playgroud)

instrumentation llvm llvm-ir

2
推荐指数
1
解决办法
2231
查看次数

标签 统计

instrumentation ×1

llvm ×1

llvm-ir ×1