我正在尝试运行此代码,但我得到: 错误:预期的指令操作码 标签_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:
.....
提前致谢!
答案 0 :(得分:4)
我解决了问题,问题是在进入循环(label_3)之前我们需要隐式关闭上一个块,并且需要一个“终结者”指令,所以我在label_3之前添加了:line, br label_3 有关更多详细信息,请阅读: https://zanopia.wordpress.com/2010/09/14/understanding-llvm-assembly-with-fractals-part-i/