llvm 错误-预期指令操作码错误

Heb*_*bud 2 llvm llvm-ir

我正在尝试运行此代码,但收到:错误:预期指令操作码 label_3:

这是代码的相关部分:

define void @main(){
%r1 =  alloca [50 x i32]
%r7 = alloca i32
store i32 0 , i32* %r7
label_3:
%r9 = load i32 , i32* %r7
%r8 = getelementptr [258 x i32], [258 x i32]* %r6 , i32 0 , i32 %r9
store i32 0 , i32* %r8
%r10 = add i32 1 , %r9
store i32 %r10 , i32* %r7
%r11 = icmp eq i32 256 , i32 %r10
br i1 %r11 , label %label_4 , label %label_3
label_4:
.....
Run Code Online (Sandbox Code Playgroud)

提前致谢!

Heb*_*bud 5

我解决了问题,问题是在进入循环(label_3)之前,我们需要隐式关闭前一个块,并且需要 \xe2\x80\x9cTerminator\xe2\x80\x9d 指令,所以我在 label_3 之前添加: line, br label label_3\n有关更多详细信息,请阅读:\n https://zanopia.wordpress.com/2010/09/14/understanding-llvm- assembly-with-fractals-part-i/

\n