Basic feature test for multiple return values in codegen.
authorDan Gohman <gohman@apple.com>
Tue, 11 Mar 2008 23:53:16 +0000 (23:53 +0000)
committerDan Gohman <gohman@apple.com>
Tue, 11 Mar 2008 23:53:16 +0000 (23:53 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48260 91177308-0d34-0410-b5e6-96231b3b80d8

test/CodeGen/Generic/multiple-return-values.ll [new file with mode: 0644]

diff --git a/test/CodeGen/Generic/multiple-return-values.ll b/test/CodeGen/Generic/multiple-return-values.ll
new file mode 100644 (file)
index 0000000..5f2e7f9
--- /dev/null
@@ -0,0 +1,16 @@
+; RUN: llvm-as < %s | llc
+
+define {i64, float} @bar(i64 %a, float %b) {
+        %y = add i64 %a, 7
+        %z = add float %b, 7.0
+       ret i64 %y, float %z
+}
+
+define i64 @foo() {
+       %M = call {i64, float} @bar(i64 21, float 21.0)
+        %N = getresult {i64, float} %M, 0
+        %O = getresult {i64, float} %M, 1
+        %P = fptosi float %O to i64
+        %Q = add i64 %P, %N
+       ret i64 %Q
+}