[InstCombine] Signed saturation patterns
[llvm-complete.git] / test / Analysis / LazyCallGraph / alias.ll
blob7c9ca5182f91e98f8a62e1666b53d43b87ff4368
1 ; RUN: opt -disable-output -passes=print-lcg %s 2>&1 | FileCheck %s
3 ; Aliased function should be reachable in CGSCC.
5 target triple = "x86_64-grtev4-linux-gnu"
7 ; CHECK:        Edges in function: foo
8 ; CHECK:        Edges in function: bar
9 ; CHECK:        Edges in function: baz
11 ; CHECK:        RefSCC with 1 call SCCs:
12 ; CHECK-NEXT:     SCC with 1 functions:
13 ; CHECK-NEXT:       bar
15 ; CHECK:       RefSCC with 1 call SCCs:
16 ; CHECK-NEXT:    SCC with 1 functions:
17 ; CHECK-NEXT:      foo
19 ; CHECK-NOT:       baz
21 @alias1 = weak dso_local alias i8* (i8*), i8* (i8*)* @foo
23 define dso_local i8* @foo(i8* %returned) {
24   ret i8* %returned
27 @alias2 = weak dso_local alias i8* (i8*), i8* (i8*)* @bar
29 define internal i8* @bar(i8* %returned) {
30   ret i8* %returned
33 ; Internal alias is not reachable.
34 @alias3 = internal alias i8* (i8*), i8* (i8*)* @baz
36 define internal i8* @baz(i8* %returned) {
37   ret i8* %returned