brintos

brintos / llvm-project-archived public Read only

0
0
Text · 565 B · d5373cd Raw
30 lines · plain
1; RUN: opt < %s -passes=tailcallelim -verify-dom-info -S | FileCheck %s2 3; Test that we don't tail call in a functions that calls returns_twice4; functions.5 6declare void @bar()7 8; CHECK: foo19; CHECK-NOT: tail call void @bar()10 11define void @foo1(ptr %x) {12bb:13  %tmp75 = tail call i32 @setjmp(ptr %x)14  call void @bar()15  ret void16}17 18declare i32 @setjmp(ptr) returns_twice19 20; CHECK: foo221; CHECK-NOT: tail call void @bar()22 23define void @foo2(ptr %x) {24bb:25  %tmp75 = tail call i32 @zed2(ptr %x)26  call void @bar()27  ret void28}29declare i32 @zed2(ptr) returns_twice30