1; RUN: llvm-extract -func foo -S < %s | FileCheck %s 2; RUN: llvm-extract -delete -func foo -S < %s | FileCheck --check-prefix=DELETE %s 3 4; Test that linkonce definitions are mapped to weak so that they are not 5; dropped. 6 7; CHECK: @bar = external global i32 8; CHECK: define weak i32* @foo() { 9; CHECK-NEXT: ret i32* @bar 10; CHECK-NEXT: } 11 12; DELETE: @bar = weak global i32 42 13; DELETE: declare i32* @foo() 14 15@bar = linkonce global i32 42 16 17define linkonce i32* @foo() { 18 ret i32* @bar 19} 20 21define void @g() { 22 call i32* @foo() 23 ret void 24} 25