Rafael Espindola | 4609cb7 | 2015-12-08 02:29:45 +0000 | [diff] [blame] | 1 | ; RUN: llvm-link -S %S/Inputs/linkage.b.ll %S/Inputs/linkage.c.ll | FileCheck %s -check-prefix=B -check-prefix=C -check-prefix=CU |
| 2 | ; RUN: llvm-link -S -only-needed %S/Inputs/linkage.b.ll %S/Inputs/linkage.c.ll | FileCheck %s -check-prefix=B -check-prefix=C -check-prefix=CN |
| 3 | ; RUN: llvm-link -S -internalize %S/Inputs/linkage.b.ll %S/Inputs/linkage.c.ll | FileCheck %s -check-prefix=B -check-prefix=CI |
| 4 | ; RUN: llvm-link -S -internalize -only-needed %S/Inputs/linkage.b.ll %S/Inputs/linkage.c.ll | FileCheck %s -check-prefix=B -check-prefix=CN |
Jonas Devlieghere | 2ebca36 | 2017-03-13 18:08:11 +0000 | [diff] [blame] | 5 | ; RUN: llvm-link -S -internalize %S/Inputs/linkage.b.ll %S/Inputs/linkage.c.ll %S/Inputs/linkage.d.ll | FileCheck %s -check-prefix=B -check-prefix=DI |
Artem Belevich | 20264d6 | 2015-09-01 17:55:55 +0000 | [diff] [blame] | 6 | |
| 7 | C-LABEL: @X = global i32 5 |
| 8 | CI-LABEL: @X = internal global i32 5 |
| 9 | CU-LABEL:@U = global i32 6 |
| 10 | CI-LABEL:@U = internal global i32 6 |
Teresa Johnson | 17a6cf8 | 2015-10-29 21:24:38 +0000 | [diff] [blame] | 11 | CN-NOT:@U |
Jonas Devlieghere | 2ebca36 | 2017-03-13 18:08:11 +0000 | [diff] [blame] | 12 | DI-LABEL: @Y = global i8 42 |
| 13 | DI-LABEL: @llvm.used = appending global [2 x i8*] [i8* @Y, i8* bitcast (i64 ()* @foo to i8*)], section "llvm.metadata" |
Artem Belevich | 20264d6 | 2015-09-01 17:55:55 +0000 | [diff] [blame] | 14 | |
| 15 | B-LABEL: define void @bar() { |
| 16 | |
| 17 | C-LABEL: define i32 @foo() |
| 18 | CI-LABEL: define internal i32 @foo() |
| 19 | |
| 20 | CU-LABEL:define i32 @unused() { |
| 21 | CI-LABEL:define internal i32 @unused() { |
Teresa Johnson | 17a6cf8 | 2015-10-29 21:24:38 +0000 | [diff] [blame] | 22 | CN-NOT:@unused() |
Jonas Devlieghere | 2ebca36 | 2017-03-13 18:08:11 +0000 | [diff] [blame] | 23 | |
| 24 | DI-LABEL: define internal i32 @foo.6() |
| 25 | DI-LABEL: define i64 @foo() |