brintos

brintos / llvm-project-archived public Read only

0
0
Text · 673 B · 9fedaba Raw
34 lines · plain
1; RUN: opt -passes=bdce -S < %s | FileCheck %s2 3declare i32 @strlen(ptr) readonly nounwind willreturn4 5define void @test1() {6  call i32 @strlen( ptr null )7  ret void8 9; CHECK-LABEL: @test110; CHECK-NOT: call11; CHECK: ret void12}13 14define i32 @test2() personality ptr @__gxx_personality_v0 {15  ; invoke of pure function should not be deleted!16  invoke i32 @strlen( ptr null ) readnone17                  to label %Cont unwind label %Other18 19Cont:           ; preds = %020  ret i32 021 22Other:          ; preds = %023   %exn = landingpad {ptr, i32}24            cleanup25  ret i32 126 27; CHECK-LABEL: @test228; CHECK: invoke29; CHECK: ret i32 130}31 32declare i32 @__gxx_personality_v0(...)33 34