diff options
| author | Dan Gohman <dan433584@gmail.com> | 2019-05-21 23:06:34 +0000 |
|---|---|---|
| committer | Dan Gohman <dan433584@gmail.com> | 2019-05-21 23:06:34 +0000 |
| commit | a49496fb2a16b729f6f6ec8b9a1e8c72133ac9d9 (patch) | |
| tree | 1cef496b4f49b283af4c53a4be6c83bca406ef83 /llvm/test/CodeGen/WebAssembly | |
| parent | db62d375dc339da7edeeb300e7348ffb774e5ed1 (diff) | |
| download | bcm5719-llvm-a49496fb2a16b729f6f6ec8b9a1e8c72133ac9d9.tar.gz bcm5719-llvm-a49496fb2a16b729f6f6ec8b9a1e8c72133ac9d9.zip | |
[WebAssembly] Add the signature for the new llround builtin function
r360889 added new llround builtin functions. This patch adds their
signatures for the WebAssembly backend.
It also adds wasm32 support to utils/update_llc_test_checks.py, since
that's the script other targets are using for their testcases for this
feature.
Differential Revision: https://reviews.llvm.org/D62207
llvm-svn: 361327
Diffstat (limited to 'llvm/test/CodeGen/WebAssembly')
| -rw-r--r-- | llvm/test/CodeGen/WebAssembly/llround-conv-i32.ll | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/llvm/test/CodeGen/WebAssembly/llround-conv-i32.ll b/llvm/test/CodeGen/WebAssembly/llround-conv-i32.ll new file mode 100644 index 00000000000..eb2768cb940 --- /dev/null +++ b/llvm/test/CodeGen/WebAssembly/llround-conv-i32.ll @@ -0,0 +1,31 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py +; RUN: llc < %s -mtriple=wasm32 | FileCheck %s + +define i64 @testmsxs_builtin(float %x) { +; CHECK-LABEL: testmsxs_builtin: +; CHECK: .functype testmsxs_builtin (f32) -> (i64) +; CHECK-NEXT: # %bb.0: # %entry +; CHECK-NEXT: local.get 0 +; CHECK-NEXT: i64.call llroundf +; CHECK-NEXT: # fallthrough-return-value +; CHECK-NEXT: end_function +entry: + %0 = tail call i64 @llvm.llround.f32(float %x) + ret i64 %0 +} + +define i64 @testmsxd_builtin(double %x) { +; CHECK-LABEL: testmsxd_builtin: +; CHECK: .functype testmsxd_builtin (f64) -> (i64) +; CHECK-NEXT: # %bb.0: # %entry +; CHECK-NEXT: local.get 0 +; CHECK-NEXT: i64.call llround +; CHECK-NEXT: # fallthrough-return-value +; CHECK-NEXT: end_function +entry: + %0 = tail call i64 @llvm.llround.f64(double %x) + ret i64 %0 +} + +declare i64 @llvm.llround.f32(float) nounwind readnone +declare i64 @llvm.llround.f64(double) nounwind readnone |

