diff options
author | Tim Northover <Tim.Northover@arm.com> | 2013-02-28 14:36:24 +0000 |
---|---|---|
committer | Tim Northover <Tim.Northover@arm.com> | 2013-02-28 14:36:24 +0000 |
commit | 5366ab21f4595d0e3888b2d23f38469da2465b8d (patch) | |
tree | 5a372d485742bddaab248e1d476e988bb90c7cc0 /test | |
parent | 6303b661b390ef37185f7e5f5cdd352287caf1fc (diff) | |
download | external_llvm-5366ab21f4595d0e3888b2d23f38469da2465b8d.zip external_llvm-5366ab21f4595d0e3888b2d23f38469da2465b8d.tar.gz external_llvm-5366ab21f4595d0e3888b2d23f38469da2465b8d.tar.bz2 |
AArch64: don't drop GlobalAddress offset when handling extern_weak decls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176258 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r-- | test/CodeGen/AArch64/extern-weak.ll | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/test/CodeGen/AArch64/extern-weak.ll b/test/CodeGen/AArch64/extern-weak.ll index 2989776..f358243 100644 --- a/test/CodeGen/AArch64/extern-weak.ll +++ b/test/CodeGen/AArch64/extern-weak.ll @@ -12,3 +12,16 @@ define i32()* @foo() { ; CHECK: ldr x0, [{{x[0-9]+}}, #:lo12:.LCPI0_0] } + + +@arr_var = extern_weak global [10 x i32] + +define i32* @bar() { + %addr = getelementptr [10 x i32]* @arr_var, i32 0, i32 5 +; CHECK: .LCPI1_0: +; CHECK-NEXT: .xword arr_var + +; CHECK: ldr [[BASE:x[0-9]+]], [{{x[0-9]+}}, #:lo12:.LCPI1_0] +; CHECK: add x0, [[BASE]], #20 + ret i32* %addr +}
\ No newline at end of file |