summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorTim Northover <tnorthover@apple.com>2017-04-17 18:18:47 +0000
committerTim Northover <tnorthover@apple.com>2017-04-17 18:18:47 +0000
commit46e36f0953aabb5e5cd00ed8d296d60f9f71b424 (patch)
treed4cb837232a9aa5f332fb267923acf69986d5e7d /llvm/test
parentceb30b0717456feeae9a6c9142169b9e39cc8eff (diff)
downloadbcm5719-llvm-46e36f0953aabb5e5cd00ed8d296d60f9f71b424.tar.gz
bcm5719-llvm-46e36f0953aabb5e5cd00ed8d296d60f9f71b424.zip
AArch64: put nonlazybind special handling behind a flag for now.
It's basically a terrible idea anyway but objc_msgSend gets emitted like that. We can decide on a better way to deal with it in the unlikely event that anyone actually uses it. llvm-svn: 300474
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/CodeGen/AArch64/nonlazybind.ll10
1 files changed, 9 insertions, 1 deletions
diff --git a/llvm/test/CodeGen/AArch64/nonlazybind.ll b/llvm/test/CodeGen/AArch64/nonlazybind.ll
index 9f0bc4645ad..4355d45fe84 100644
--- a/llvm/test/CodeGen/AArch64/nonlazybind.ll
+++ b/llvm/test/CodeGen/AArch64/nonlazybind.ll
@@ -1,4 +1,5 @@
-; RUN: llc -mtriple=aarch64-apple-ios %s -o - | FileCheck %s
+; RUN: llc -mtriple=aarch64-apple-ios %s -o - -aarch64-enable-nonlazybind | FileCheck %s
+; RUN: llc -mtriple=aarch64-apple-ios %s -o - | FileCheck %s --check-prefix=CHECK-NORMAL
define void @local() nonlazybind {
ret void
@@ -15,6 +16,10 @@ define void @test_laziness() {
; CHECK: ldr [[FUNC:x[0-9]+]], [x[[TMP]], _nonlocal@GOTPAGEOFF]
; CHECK: blr [[FUNC]]
+; CHECK-NORMAL-LABEL: test_laziness:
+; CHECK-NORMAL: bl _local
+; CHEKC-NORMAL: bl _nonlocal
+
call void @local()
call void @nonlocal()
ret void
@@ -27,6 +32,9 @@ define void @test_laziness_tail() {
; CHECK: ldr [[FUNC:x[0-9]+]], [x[[TMP]], _nonlocal@GOTPAGEOFF]
; CHECK: br [[FUNC]]
+; CHECK-NORMAL-LABEL: test_laziness_tail:
+; CHECK-NORMAL: b _nonlocal
+
tail call void @nonlocal()
ret void
}
OpenPOWER on IntegriCloud