[clang][modules] Don't prevent translation of FW_Private includes when explicitly...
[llvm-project.git] / llvm / test / Transforms / BDCE / dce-pure.ll
blob9fedaba2b5ab168a0094e2a857bd6e1d7702e529
1 ; RUN: opt -passes=bdce -S < %s | FileCheck %s
3 declare i32 @strlen(ptr) readonly nounwind willreturn
5 define void @test1() {
6   call i32 @strlen( ptr null )
7   ret void
9 ; CHECK-LABEL: @test1
10 ; CHECK-NOT: call
11 ; CHECK: ret void
14 define i32 @test2() personality ptr @__gxx_personality_v0 {
15   ; invoke of pure function should not be deleted!
16   invoke i32 @strlen( ptr null ) readnone
17                   to label %Cont unwind label %Other
19 Cont:           ; preds = %0
20   ret i32 0
22 Other:          ; preds = %0
23    %exn = landingpad {ptr, i32}
24             cleanup
25   ret i32 1
27 ; CHECK-LABEL: @test2
28 ; CHECK: invoke
29 ; CHECK: ret i32 1
32 declare i32 @__gxx_personality_v0(...)