summaryrefslogtreecommitdiff
path: root/test/CodeGen/SystemZ/vec-args-error-08.ll
diff options
context:
space:
mode:
authorUlrich Weigand <ulrich.weigand@de.ibm.com>2015-05-05 19:30:05 +0000
committerUlrich Weigand <ulrich.weigand@de.ibm.com>2015-05-05 19:30:05 +0000
commite07464832d2df15184b4b288873123ddaef831c3 (patch)
treeff3ce3786f99518b1ba034723de0d83cd4b5277a /test/CodeGen/SystemZ/vec-args-error-08.ll
parent538287dea2e6ae17a0f81615097c4de0df5d1e4d (diff)
[SystemZ] Mark v1i128 and v1f128 as unsupported
The ABI specifies that <1 x i128> and <1 x fp128> are supposed to be passed in vector registers. We do not yet support those types, and some infrastructure is missing before we can do so. In order to prevent accidentally generating code violating the ABI, this patch adds checks to detect those types and error out if user code attempts to use them. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@236526 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGen/SystemZ/vec-args-error-08.ll')
-rw-r--r--test/CodeGen/SystemZ/vec-args-error-08.ll12
1 files changed, 12 insertions, 0 deletions
diff --git a/test/CodeGen/SystemZ/vec-args-error-08.ll b/test/CodeGen/SystemZ/vec-args-error-08.ll
new file mode 100644
index 00000000000..7b16b9f46e3
--- /dev/null
+++ b/test/CodeGen/SystemZ/vec-args-error-08.ll
@@ -0,0 +1,12 @@
+; Verify that we detect unsupported single-element vector types.
+
+; RUN: not llc < %s -mtriple=s390x-linux-gnu -mcpu=z13 2>&1 | FileCheck %s
+
+declare <1 x fp128> @bar()
+
+define void @foo() {
+ %res = call <1 x fp128> @bar ()
+ ret void
+}
+
+; CHECK: LLVM ERROR: Unsupported vector argument or return type