summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/SPARC/varargs.ll
diff options
context:
space:
mode:
authorJakob Stoklund Olesen <stoklund@2pi.dk>2013-04-21 21:36:49 +0000
committerJakob Stoklund Olesen <stoklund@2pi.dk>2013-04-21 21:36:49 +0000
commit84ebe25db79412599f094759bf9d2aa324279c48 (patch)
tree9ec4af5be6f051e0ab767401eada2b3b091228cb /llvm/test/CodeGen/SPARC/varargs.ll
parentd4db72db614d50be5629e01a718418c89f1e9b2c (diff)
downloadbcm5719-llvm-84ebe25db79412599f094759bf9d2aa324279c48.tar.gz
bcm5719-llvm-84ebe25db79412599f094759bf9d2aa324279c48.zip
Passing arguments to varags functions under the SPARC v9 ABI.
Arguments after the fixed arguments never use the floating point registers. llvm-svn: 179987
Diffstat (limited to 'llvm/test/CodeGen/SPARC/varargs.ll')
-rw-r--r--llvm/test/CodeGen/SPARC/varargs.ll13
1 files changed, 13 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/SPARC/varargs.ll b/llvm/test/CodeGen/SPARC/varargs.ll
index 2f832943a7f..b13f90e6ca7 100644
--- a/llvm/test/CodeGen/SPARC/varargs.ll
+++ b/llvm/test/CodeGen/SPARC/varargs.ll
@@ -60,3 +60,16 @@ sw.default:
}
declare void @llvm.va_start(i8*)
+
+@.str = private unnamed_addr constant [4 x i8] c"abc\00", align 1
+
+; CHECK: call_1d
+; The fixed-arg double goes in %d2, the second goes in %o2.
+; CHECK: sethi 1048576
+; CHECK: , %o2
+; CHECK: , %f2
+define i32 @call_1d() #0 {
+entry:
+ %call = call double (i8*, double, ...)* @varargsfunc(i8* undef, double 1.000000e+00, double 2.000000e+00)
+ ret i32 1
+}
OpenPOWER on IntegriCloud