summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorStefan Pintilie <stefanp@ca.ibm.com>2018-07-06 02:47:02 +0000
committerStefan Pintilie <stefanp@ca.ibm.com>2018-07-06 02:47:02 +0000
commitb351f09c9e945264855b99667a275fc513d04e77 (patch)
treea8f4764853326f65301d70f225f51a511b560096 /llvm/test
parent1f200adfa7c1a87ca8af43c4eb5f471379899d26 (diff)
downloadbcm5719-llvm-b351f09c9e945264855b99667a275fc513d04e77.tar.gz
bcm5719-llvm-b351f09c9e945264855b99667a275fc513d04e77.zip
[Power9] Add __float128 library call for frem
Power 9 does not have a hardware instruction for frem but we can call fmodf128. Differential Revision: https://reviews.llvm.org/D48552 llvm-svn: 336406
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/CodeGen/PowerPC/f128-arith.ll14
1 files changed, 14 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/PowerPC/f128-arith.ll b/llvm/test/CodeGen/PowerPC/f128-arith.ll
index 534f8f22ebc..5f1296e7b9b 100644
--- a/llvm/test/CodeGen/PowerPC/f128-arith.ll
+++ b/llvm/test/CodeGen/PowerPC/f128-arith.ll
@@ -293,3 +293,17 @@ entry:
ret void
}
declare fp128 @llvm.powi.f128(fp128 %Val, i32 %power)
+
+@a = common global fp128 0xL00000000000000000000000000000000, align 16
+@b = common global fp128 0xL00000000000000000000000000000000, align 16
+
+define fp128 @qp_frem() #0 {
+entry:
+ %0 = load fp128, fp128* @a, align 16
+ %1 = load fp128, fp128* @b, align 16
+ %rem = frem fp128 %0, %1
+ ret fp128 %rem
+; CHECK-LABEL: qp_frem
+; CHECK: bl fmodf128
+; CHECK: blr
+}
OpenPOWER on IntegriCloud