Home | History | Annotate | Download | only in Other
      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 
     17 define linkonce i32* @foo() {
     18   ret i32* @bar
     19 }
     20 
     21 define void @g() {
     22   call i32* @foo()
     23   ret void
     24 }
     25