brintos

brintos / llvm-project-archived public Read only

0
0
Text · 902 B · 6e7e2b0 Raw
35 lines · plain
1; RUN: llvm-as < %s | llvm-dis > %t1.ll2; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll3; RUN: diff %t1.ll %t2.ll4 5%FunTy = type i32 (i32)6 7define void @invoke(ptr %x) {8  %foo = call i32 %x( i32 123 )           ; <i32> [#uses=0]9  %foo2 = tail call i32 %x( i32 123 )             ; <i32> [#uses=0]10  ret void11}12 13define i32 @main(i32 %argc) personality ptr @__gxx_personality_v0 {14  %retval = call i32 @test( i32 %argc )           ; <i32> [#uses=2]15  %two = add i32 %retval, %retval         ; <i32> [#uses=1]16  %retval2 = invoke i32 @test( i32 %argc )17     to label %Next unwind label %Error              ; <i32> [#uses=1]18 19Next:20  %two2 = add i32 %two, %retval2          ; <i32> [#uses=1]21  call void @invoke( ptr @test )22  ret i32 %two223 24Error:25  %exn = landingpad {ptr, i32}26            cleanup27  ret i32 -128}29 30define i32 @test(i32 %i0) {31        ret i32 %i032}33 34declare i32 @__gxx_personality_v0(...)35