summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/Thumb2/stack_guard_remat.ll
diff options
context:
space:
mode:
authorAkira Hatanaka <ahatanaka@apple.com>2014-08-02 05:40:40 +0000
committerAkira Hatanaka <ahatanaka@apple.com>2014-08-02 05:40:40 +0000
commitdc08c30df9098b397a103d96999d7455d1a666bc (patch)
treeb4b46c6ffab28eaeb28f94e16651d94b4b958a86 /llvm/test/CodeGen/Thumb2/stack_guard_remat.ll
parent70735351cac874a7d56bc03fe315d76c308130d0 (diff)
downloadbcm5719-llvm-dc08c30df9098b397a103d96999d7455d1a666bc.tar.gz
bcm5719-llvm-dc08c30df9098b397a103d96999d7455d1a666bc.zip
[ARM] In dynamic-no-pic mode, ARM's post-RA pseudo expansion was incorrectly
expanding pseudo LOAD_STATCK_GUARD using instructions that are normally used in pic mode. This patch fixes the bug. <rdar://problem/17886592> llvm-svn: 214614
Diffstat (limited to 'llvm/test/CodeGen/Thumb2/stack_guard_remat.ll')
-rw-r--r--llvm/test/CodeGen/Thumb2/stack_guard_remat.ll6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/Thumb2/stack_guard_remat.ll b/llvm/test/CodeGen/Thumb2/stack_guard_remat.ll
index a0982be5f56..c8ea8714d31 100644
--- a/llvm/test/CodeGen/Thumb2/stack_guard_remat.ll
+++ b/llvm/test/CodeGen/Thumb2/stack_guard_remat.ll
@@ -1,5 +1,6 @@
; RUN: llc < %s -mtriple=thumbv7-apple-ios -relocation-model=pic -no-integrated-as | FileCheck %s -check-prefix=PIC
; RUN: llc < %s -mtriple=thumbv7-apple-ios -relocation-model=static -no-integrated-as | FileCheck %s -check-prefix=STATIC
+; RUN: llc < %s -mtriple=thumbv7-apple-ios -relocation-model=dynamic-no-pic -no-integrated-as | FileCheck %s -check-prefix=DYNAMIC-NO-PIC
;PIC: foo2
;PIC: movw [[R0:r[0-9]+]], :lower16:(L___stack_chk_guard$non_lazy_ptr-([[LABEL0:LPC[0-9_]+]]+4))
@@ -14,6 +15,11 @@
;STATIC: movt [[R0]], :upper16:___stack_chk_guard
;STATIC: ldr {{r[0-9]+}}, {{\[}}[[R0]]{{\]}}
+;DYNAMIC-NO-PIC: foo2
+;DYNAMIC-NO-PIC: movw [[R0:r[0-9]+]], :lower16:L___stack_chk_guard$non_lazy_ptr
+;DYNAMIC-NO-PIC: movt [[R0]], :upper16:L___stack_chk_guard$non_lazy_ptr
+;DYNAMIC-NO-PIC: ldr {{r[0-9]+}}, {{\[}}[[R0]]{{\]}}
+
; Function Attrs: nounwind ssp
define i32 @test_stack_guard_remat() #0 {
%a1 = alloca [256 x i32], align 4
OpenPOWER on IntegriCloud