diff options
author | Derek Schuff <dschuff@chromium.org> | 2024-11-19 14:23:48 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-11-19 22:23:48 +0000 |
commit | 206ad2906c9e0af92ec4c4da223c96755243aa2e (patch) | |
tree | a150173aeb50904056377515c8938d955b4bfaf8 /test/lit/help | |
parent | b0e999a2b8841d8be21cbcdc84cbc1d6469e36d7 (diff) | |
download | binaryen-206ad2906c9e0af92ec4c4da223c96755243aa2e.tar.gz binaryen-206ad2906c9e0af92ec4c4da223c96755243aa2e.tar.bz2 binaryen-206ad2906c9e0af92ec4c4da223c96755243aa2e.zip |
Add nontrapping-fptoint lowering pass (#7016)
This pass lowers nontrapping FP to int instructions to implement LLVM's
conversion behavior.
This means that they are not fully complete lowerings according to the
wasm spec, but have the same
undefined behavior that LLM does. This keeps the pass simpler and
preserves existing behavior when
compiling without nontrapping-ft.
This will be used in emscripten, so that we can build libraries with
nontrapping-fp and lower them away after link if desired.
Diffstat (limited to 'test/lit/help')
-rw-r--r-- | test/lit/help/wasm-metadce.test | 5 | ||||
-rw-r--r-- | test/lit/help/wasm-opt.test | 5 | ||||
-rw-r--r-- | test/lit/help/wasm2js.test | 5 |
3 files changed, 15 insertions, 0 deletions
diff --git a/test/lit/help/wasm-metadce.test b/test/lit/help/wasm-metadce.test index 50f71f8f5..4dc03883a 100644 --- a/test/lit/help/wasm-metadce.test +++ b/test/lit/help/wasm-metadce.test @@ -234,6 +234,11 @@ ;; CHECK-NEXT: memory.fill to wasm mvp and ;; CHECK-NEXT: disable the bulk-memory feature. ;; CHECK-NEXT: +;; CHECK-NEXT: --llvm-nontrapping-fptoint-lowering lower nontrapping float-to-int +;; CHECK-NEXT: operations to wasm mvp and +;; CHECK-NEXT: disable the nontrapping fptoint +;; CHECK-NEXT: feature +;; CHECK-NEXT: ;; CHECK-NEXT: --local-cse common subexpression elimination ;; CHECK-NEXT: inside basic blocks ;; CHECK-NEXT: diff --git a/test/lit/help/wasm-opt.test b/test/lit/help/wasm-opt.test index 1ac823fa7..62a30a770 100644 --- a/test/lit/help/wasm-opt.test +++ b/test/lit/help/wasm-opt.test @@ -243,6 +243,11 @@ ;; CHECK-NEXT: memory.fill to wasm mvp and ;; CHECK-NEXT: disable the bulk-memory feature. ;; CHECK-NEXT: +;; CHECK-NEXT: --llvm-nontrapping-fptoint-lowering lower nontrapping float-to-int +;; CHECK-NEXT: operations to wasm mvp and +;; CHECK-NEXT: disable the nontrapping fptoint +;; CHECK-NEXT: feature +;; CHECK-NEXT: ;; CHECK-NEXT: --local-cse common subexpression elimination ;; CHECK-NEXT: inside basic blocks ;; CHECK-NEXT: diff --git a/test/lit/help/wasm2js.test b/test/lit/help/wasm2js.test index 69923a064..e2a450bc8 100644 --- a/test/lit/help/wasm2js.test +++ b/test/lit/help/wasm2js.test @@ -197,6 +197,11 @@ ;; CHECK-NEXT: memory.fill to wasm mvp and ;; CHECK-NEXT: disable the bulk-memory feature. ;; CHECK-NEXT: +;; CHECK-NEXT: --llvm-nontrapping-fptoint-lowering lower nontrapping float-to-int +;; CHECK-NEXT: operations to wasm mvp and +;; CHECK-NEXT: disable the nontrapping fptoint +;; CHECK-NEXT: feature +;; CHECK-NEXT: ;; CHECK-NEXT: --local-cse common subexpression elimination ;; CHECK-NEXT: inside basic blocks ;; CHECK-NEXT: |