blob: 298977682b23b8cf77f2752c5ff3ff18889f2f99 [file] [log] [blame]
Tim Northover228d9d32013-02-06 16:43:33 +00001; RUN: llc -mtriple=aarch64-none-linux-gnu -o - < %s | FileCheck %s
2
3declare extern_weak i32 @var()
4
5define i32()* @foo() {
6; The usual ADRP/ADD pair can't be used for a weak reference because it must
7; evaluate to 0 if the symbol is undefined. We use a litpool entry.
8 ret i32()* @var
Tim Northover228d9d32013-02-06 16:43:33 +00009; CHECK: .LCPI0_0:
10; CHECK-NEXT: .xword var
Tim Northover3533ad6b2013-02-15 09:33:43 +000011
12; CHECK: ldr x0, [{{x[0-9]+}}, #:lo12:.LCPI0_0]
13
Tim Northover228d9d32013-02-06 16:43:33 +000014}