1 ; RUN: llc < %s -mtriple=arm-linux-gnueabi | FileCheck %s 2 3 ; CHECK: .globl test 4 5 ; CHECK: .globl foo1 6 ; CHECK: foo1 = bar 7 8 ; CHECK: .globl foo2 9 ; CHECK: foo2 = bar 10 11 ; CHECK: .weak bar_f 12 ; CHECK: bar_f = foo_f 13 14 ; CHECK: bar_i = bar 15 16 ; CHECK: .globl A 17 ; CHECK: A = bar 18 19 @bar = global i32 42 20 @foo1 = alias i32* @bar 21 @foo2 = alias i32* @bar 22 23 %FunTy = type i32() 24 25 define i32 @foo_f() { 26 ret i32 0 27 } 28 @bar_f = alias weak %FunTy* @foo_f 29 30 @bar_i = alias internal i32* @bar 31 32 @A = alias bitcast (i32* @bar to i64*) 33 34 define i32 @test() { 35 entry: 36 %tmp = load i32* @foo1 37 %tmp1 = load i32* @foo2 38 %tmp0 = load i32* @bar_i 39 %tmp2 = call i32 @foo_f() 40 %tmp3 = add i32 %tmp, %tmp2 41 %tmp4 = call %FunTy* @bar_f() 42 %tmp5 = add i32 %tmp3, %tmp4 43 %tmp6 = add i32 %tmp1, %tmp5 44 %tmp7 = add i32 %tmp6, %tmp0 45 ret i32 %tmp7 46 } 47