OLD | NEW |
(Empty) | |
| 1 ; RUN: opt < %s -resolve-aliases -S | FileCheck %s |
| 2 |
| 3 ; CHECK-NOT: @alias |
| 4 |
| 5 @r1 = internal global i32 zeroinitializer |
| 6 @a1 = alias i32* @r1 |
| 7 define i32* @usea1() { |
| 8 ; CHECK: ret i32* @r1 |
| 9 ret i32* @a1 |
| 10 } |
| 11 |
| 12 @funcalias = alias i32* ()* @usea1 |
| 13 ; CHECK: @usefuncalias |
| 14 define void @usefuncalias() { |
| 15 ; CHECK: call i32* @usea1 |
| 16 %1 = call i32* @funcalias() |
| 17 ret void |
| 18 } |
| 19 |
| 20 @bc1 = global i8* bitcast (i32* @r1 to i8*) |
| 21 @bcalias = alias i8* bitcast (i32* @r1 to i8*) |
| 22 |
| 23 ; CHECK: @usebcalias |
| 24 define i8* @usebcalias() { |
| 25 ; CHECK: ret i8* bitcast (i32* @r1 to i8*) |
| 26 ret i8* @bcalias |
| 27 } |
| 28 |
| 29 |
| 30 @fa2 = alias i32* ()* @funcalias |
| 31 ; CHECK: @usefa2 |
| 32 define void @usefa2() { |
| 33 ; CHECK: call i32* @usea1 |
| 34 call i32* @fa2() |
| 35 ret void |
| 36 } |
OLD | NEW |