1 ; RUN: llvm-reduce --abort-on-invalid-reduction --test FileCheck --test-arg --check-prefixes=CHECK-INTERESTINGNESS --test-arg %s --test-arg --input-file %s -o %t
2 ; RUN: FileCheck --check-prefixes=CHECK-FINAL --input-file=%t %s
4 ; Test handling of 'alias'.
6 ; CHECK-INTERESTINGNESS: define void @fn3
8 ; CHECK-FINAL-NOT: = {{.*}} global
9 ; CHECK-FINAL-NOT: = alias
11 ; CHECK-FINAL-NOT: @llvm.used
12 ; CHECK-FINAL-NOT: @llvm.compiler.used
14 ; CHECK-FINAL-NOT: define void @fn1
15 ; CHECK-FINAL-NOT: define void @fn2
16 ; CHECK-FINAL: define void @fn3
17 ; CHECK-FINAL-NOT: define void @fn4
19 @g1 = global [ 4 x i32 ] zeroinitializer
20 @g2 = global [ 4 x i32 ] zeroinitializer
22 @"$a1" = alias void (), ptr @fn1
23 @"$a2" = alias void (), ptr @fn2
24 @"$a3" = alias void (), ptr @fn3
25 @"$a4" = alias void (), ptr @fn4
27 @"$a5" = alias i64, getelementptr ([ 4 x i32 ], ptr @g1, i32 0, i32 1)
28 @"$a6" = alias i64, getelementptr ([ 4 x i32 ], ptr @g2, i32 0, i32 1)
30 @llvm.used = appending global [1 x ptr] [
32 ], section "llvm.metadata"
34 @llvm.compiler.used = appending global [1 x ptr] [
36 ], section "llvm.metadata"