Mehdi Amini | 059464f | 2016-04-24 03:18:01 +0000 | [diff] [blame] | 1 | ;; RUN: opt -module-summary %s -o %t1.bc |
| 2 | ; RUN: llvm-lto -thinlto-action=thinlink -o %t.index.bc %t1.bc |
| 3 | ; RUN: llvm-lto -thinlto-action=internalize -thinlto-index %t.index.bc %t1.bc -o - | llvm-dis -o - | FileCheck %s --check-prefix=REGULAR |
| 4 | ; RUN: llvm-lto -thinlto-action=internalize -thinlto-index %t.index.bc %t1.bc -o - --exported-symbol=foo | llvm-dis -o - | FileCheck %s --check-prefix=INTERNALIZE |
| 5 | |
Mehdi Amini | 8ac7b32 | 2016-08-18 00:59:24 +0000 | [diff] [blame] | 6 | ; RUN: llvm-lto2 %t1.bc -o %t.o -save-temps \ |
| 7 | ; RUN: -r=%t1.bc,_foo,pxl \ |
| 8 | ; RUN: -r=%t1.bc,_bar,pl \ |
| 9 | ; RUN: -r=%t1.bc,_linkonce_func,pl |
Mehdi Amini | fd49c73 | 2016-08-23 19:32:41 +0000 | [diff] [blame] | 10 | ; RUN: llvm-dis < %t.o.0.2.internalize.bc | FileCheck %s --check-prefix=INTERNALIZE |
Mehdi Amini | 8ac7b32 | 2016-08-18 00:59:24 +0000 | [diff] [blame] | 11 | |
| 12 | |
Mehdi Amini | 059464f | 2016-04-24 03:18:01 +0000 | [diff] [blame] | 13 | ; REGULAR: define void @foo |
| 14 | ; REGULAR: define void @bar |
Mehdi Amini | 8ac7b32 | 2016-08-18 00:59:24 +0000 | [diff] [blame] | 15 | ; REGULAR: define linkonce void @linkonce_func() |
Mehdi Amini | 059464f | 2016-04-24 03:18:01 +0000 | [diff] [blame] | 16 | ; INTERNALIZE: define void @foo |
| 17 | ; INTERNALIZE: define internal void @bar |
Mehdi Amini | 8ac7b32 | 2016-08-18 00:59:24 +0000 | [diff] [blame] | 18 | ; INTERNALIZE: define internal void @linkonce_func() |
Mehdi Amini | 059464f | 2016-04-24 03:18:01 +0000 | [diff] [blame] | 19 | |
| 20 | target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128" |
| 21 | target triple = "x86_64-apple-macosx10.11.0" |
| 22 | |
| 23 | define void @foo() { |
| 24 | ret void |
| 25 | } |
| 26 | define void @bar() { |
Mehdi Amini | 8ac7b32 | 2016-08-18 00:59:24 +0000 | [diff] [blame] | 27 | call void @linkonce_func() |
| 28 | ret void |
| 29 | } |
| 30 | define linkonce void @linkonce_func() { |
Mehdi Amini | 059464f | 2016-04-24 03:18:01 +0000 | [diff] [blame] | 31 | ret void |
| 32 | } |