brintos

brintos / llvm-project-archived public Read only

0
0
Text · 698 B · 9415e0b Raw
34 lines · plain
1; Test that we don't sink landingpads2; RUN: opt -passes=sink -S < %s | FileCheck %s3 4declare hidden void @g()5declare void @h()6declare i32 @__gxx_personality_v0(...)7 8define void @f() personality ptr @__gxx_personality_v0 {9entry:10  invoke void @g()11          to label %invoke.cont.15 unwind label %lpad12 13invoke.cont.15:14  unreachable15 16; CHECK: lpad:17; CHECK: %0 = landingpad { ptr, i32 }18lpad:19  %0 = landingpad { ptr, i32 }20          catch ptr null21  invoke void @h()22          to label %invoke.cont unwind label %lpad.123 24; CHECK: invoke.cont25; CHECK-NOT: %0 = landingpad { ptr, i32 }26invoke.cont:27  ret void28 29lpad.1:30  %1 = landingpad { ptr, i32 }31          cleanup32  resume { ptr, i32 } %133}34