summaryrefslogtreecommitdiffstats
path: root/llvm/test/CodeGen/SystemZ/fp-div-03.ll
diff options
context:
space:
mode:
authorUlrich Weigand <ulrich.weigand@de.ibm.com>2013-05-06 16:17:29 +0000
committerUlrich Weigand <ulrich.weigand@de.ibm.com>2013-05-06 16:17:29 +0000
commit9e3577ff44fe5360c72fad02fbe931977f9235fb (patch)
tree23b3903f13f5307e8ee2d834a01ca56fc86b88ed /llvm/test/CodeGen/SystemZ/fp-div-03.ll
parent5f613dfd1f7edb0ae95d521b7107b582d9df5103 (diff)
downloadbcm5719-llvm-9e3577ff44fe5360c72fad02fbe931977f9235fb.tar.gz
bcm5719-llvm-9e3577ff44fe5360c72fad02fbe931977f9235fb.zip
[SystemZ] Add CodeGen test cases
This adds all CodeGen tests for the SystemZ target. This version of the patch incorporates feedback from a review by Sean Silva. Thanks to all reviewers! Patch by Richard Sandiford. llvm-svn: 181204
Diffstat (limited to 'llvm/test/CodeGen/SystemZ/fp-div-03.ll')
-rw-r--r--llvm/test/CodeGen/SystemZ/fp-div-03.ll20
1 files changed, 20 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/SystemZ/fp-div-03.ll b/llvm/test/CodeGen/SystemZ/fp-div-03.ll
new file mode 100644
index 00000000000..18f2d7449a8
--- /dev/null
+++ b/llvm/test/CodeGen/SystemZ/fp-div-03.ll
@@ -0,0 +1,20 @@
+; Test 128-bit floating-point division.
+;
+; RUN: llc < %s -mtriple=s390x-linux-gnu | FileCheck %s
+
+; There is no memory form of 128-bit division.
+define void @f1(fp128 *%ptr, float %f2) {
+; CHECK: f1:
+; CHECK: lxebr %f0, %f0
+; CHECK: ld %f1, 0(%r2)
+; CHECK: ld %f3, 8(%r2)
+; CHECK: dxbr %f1, %f0
+; CHECK: std %f1, 0(%r2)
+; CHECK: std %f3, 8(%r2)
+; CHECK: br %r14
+ %f1 = load fp128 *%ptr
+ %f2x = fpext float %f2 to fp128
+ %sum = fdiv fp128 %f1, %f2x
+ store fp128 %sum, fp128 *%ptr
+ ret void
+}
OpenPOWER on IntegriCloud