aboutsummaryrefslogtreecommitdiffstats
path: root/test/CodeGen/SPARC/64abi.ll
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2013-04-06 21:38:57 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2013-04-06 21:38:57 +0000
commit2b9355f2d9888d6a011353610b9ca24818de59a2 (patch)
treeaf847b3485ed4b093960a3c4fe8101dd46a2875e /test/CodeGen/SPARC/64abi.ll
parent839b9096538f790a2bb060547df24703807cb83b (diff)
downloadexternal_llvm-2b9355f2d9888d6a011353610b9ca24818de59a2.zip
external_llvm-2b9355f2d9888d6a011353610b9ca24818de59a2.tar.gz
external_llvm-2b9355f2d9888d6a011353610b9ca24818de59a2.tar.bz2
SPARC v9 stack pointer bias.
64-bit SPARC v9 processes use biased stack and frame pointers, so the current function's stack frame is located at %sp+BIAS .. %fp+BIAS where BIAS = 2047. This makes more local variables directly accessible via [%fp+simm13] addressing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@178965 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/SPARC/64abi.ll')
-rw-r--r--test/CodeGen/SPARC/64abi.ll12
1 files changed, 5 insertions, 7 deletions
diff --git a/test/CodeGen/SPARC/64abi.ll b/test/CodeGen/SPARC/64abi.ll
index a9eb623..5c1c27a 100644
--- a/test/CodeGen/SPARC/64abi.ll
+++ b/test/CodeGen/SPARC/64abi.ll
@@ -7,10 +7,9 @@
; CHECK: st %i3, [%i4]
; CHECK: stx %i4, [%i4]
; CHECK: st %i5, [%i4]
-; FIXME: Stack bias
-; CHECK: ld [%fp+180], [[R:%[gilo][0-7]]]
+; CHECK: ld [%fp+2227], [[R:%[gilo][0-7]]]
; CHECK: st [[R]], [%i4]
-; CHECK: ldx [%fp+184], [[R:%[gilo][0-7]]]
+; CHECK: ldx [%fp+2231], [[R:%[gilo][0-7]]]
; CHECK: stx [[R]], [%i4]
define void @intarg(i8 %a0, ; %i0
i8 %a1, ; %i1
@@ -39,8 +38,7 @@ define void @intarg(i8 %a0, ; %i0
; CHECK: faddd %f2,
; CHECK: faddd %f4,
; CHECK: faddd %f6,
-; FIXME: Stack bias
-; CHECK: ld [%fp+260], [[F:%f[0-9]+]]
+; CHECK: ld [%fp+2307], [[F:%f[0-9]+]]
; CHECK: fadds %f31, [[F]]
define double @floatarg(float %a0, ; %f1
double %a1, ; %d2
@@ -74,8 +72,8 @@ define double @floatarg(float %a0, ; %f1
; CHECK: fstod %f3
; CHECK: faddd %f6
; CHECK: faddd %f16
-; CHECK: ldx [%fp+184]
-; CHECK: ldx [%fp+200]
+; CHECK: ldx [%fp+2231]
+; CHECK: ldx [%fp+2247]
define void @mixedarg(i8 %a0, ; %i0
float %a1, ; %f3
i16 %a2, ; %i2