diff options
| author | Stefan Pintilie <stefanp@ca.ibm.com> | 2018-07-06 02:47:02 +0000 |
|---|---|---|
| committer | Stefan Pintilie <stefanp@ca.ibm.com> | 2018-07-06 02:47:02 +0000 |
| commit | b351f09c9e945264855b99667a275fc513d04e77 (patch) | |
| tree | a8f4764853326f65301d70f225f51a511b560096 /llvm/test | |
| parent | 1f200adfa7c1a87ca8af43c4eb5f471379899d26 (diff) | |
| download | bcm5719-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.ll | 14 |
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 +} |

