Skip to content
This repository was archived by the owner on Dec 22, 2021. It is now read-only.
This repository was archived by the owner on Dec 22, 2021. It is now read-only.

Shipping progress #480

Description

@tlively

This issue is meant to track which projects have updated their implementation to match the final proposal and have shipped by default, if applicable.

Project status
V8 released in 9.1.54
SpiderMonkey
LLVM Updated upstream, will be released in 13.0
Binaryen released in 101
WABT released in 1.0.22
wasmparser.rs released in 0.76.0
wasdk/wasmparser released in 5.0.1
CodeMirror in trunk; to be released in 5.59.5
Emscripten
Rust intrinsics available on nightly, stable in 1.54.0+ (2021-07-29 release date)
Chrome released in Chrome 91
Firefox in nightly; Firefox 89 on x86/x64
Node released in 16.4.0
WAMR
Wasmtime
Lucet
WAVM in trunk
SSVM
Wasmer on master

Activity

  1. abrown commented on Feb 24, 2021

    @abrown
    Contributor

    Can we add WAMR, Wasmtime, and Lucet to that list? Perhaps WAVM and SSVM as well?

  2. abrown commented on Feb 24, 2021

    @abrown
    Contributor

    (Should we update the implementation status document for those runtimes as well?)

  3. tlively commented on Feb 24, 2021

    @tlively
    MemberAuthor

    Now that the proposal is finalized, the more fine-grained status documents aren't as useful IMO because support has become more or less binary.

  4. syrusakbary commented on Mar 2, 2021

    @syrusakbary

    Can we add Wasmer to the list? Thanks!

  5. ngzhian commented on Mar 2, 2021

    @ngzhian
    Member

    Can we add https://github.com/wasdk/wasmparser too? (note this is not the .rs one, this is used by Chrome DevTools iiuc)

  6. tlively commented on Mar 2, 2021

    @tlively
    MemberAuthor

    Interesting, I've never seen that one before. Added!

  7. ngzhian commented on Mar 3, 2021

    @ngzhian
    Member

    For authors of tools, https://github.com/ngzhian/simd-opcodes might be handy, it's just a csv of opcodes (in int and hex) and names of instructions (and also signature, if it takes a memarg, and how many immediates they take). This might be useful for tools to use to generate whatever they need to in order to update their opcodes/add new opcodes.

  8. bmeurer commented on Mar 3, 2021

    @bmeurer

    @tlively I just realized that CodeMirror is missing from the list above. Without CodeMirror support (in the wast mode), SIMD instructions syntax highlighting will be wrong/confusing to developers in their DevTools.

  9. ngzhian commented on Mar 4, 2021

    @ngzhian
    Member

    wasdk/wasmparser has the changes in 5.0.1 (see wasdk/wasmparser#92 (comment))

  10. ngzhian commented on Mar 5, 2021

    @ngzhian
    Member

    V8 update just got merged in https://crrev.com/c/2728432, it will be in version 9.1.54 (once I know the Chrome Canary version I'll share it here.)

  11. ngzhian commented on Mar 10, 2021

    @ngzhian
    Member

    CodeMirror is updated codemirror/codemirror5#6613 (should be in 5.59.5, based on numberings so far).

  12. AndrewScheidecker commented on Mar 15, 2021

    @AndrewScheidecker
    Contributor

    As of this commit, WAVM supports the final SIMD proposal.

  13. dtig commented on Mar 15, 2021

    @dtig
    Member

    Chrome canary supports SIMD on by default as of 91.0.4442.4 on Linux, and 91.0.4441.0+ on other platforms (Windows, Mac, Android).

  14. tlively commented on Mar 18, 2021

    @tlively
    MemberAuthor

    I updated LLVM's status. All operations LLVM supports have the correct names and numbers, but it does not yet support all the new operations. wasm_simd128.h also has not yet been updated, but its planned changes are discussed in #342.

  15. ngzhian commented on Mar 23, 2021

    @ngzhian
    Member

    wabt 1.0.22 is up to date (WebAssembly/wabt#1650)

  16. tlively commented on Mar 24, 2021

    @tlively
    MemberAuthor

    Thanks for working on that, @ngzhian!

  17. lars-t-hansen commented on Mar 24, 2021

    @lars-t-hansen
    Contributor

    Firefox 89 (now in Nightly) on x86/x64 is believed to have all instructions with final opcode assignments.

  18. syrusakbary commented on May 15, 2021

    @syrusakbary

    Wasmer now supports the final SIMD opcodes (with all spectests passing) for x86 and aarch64 in master 🚀

    More info: wasmerio/wasmer#2156

  19. alexcrichton commented on May 20, 2021

    @alexcrichton
    Contributor

    The Rust language support for the simd proposal is in the home stretch and things are about to become stable and much more difficult to change after that point. A high-level summary of Rust's support is:

    If anyone is curious feel free to check out the APIs and/or naming and such. Always willing to hear feedback on that! The tracking issue is in "FCP" as of this moment. This means that there's another week or so for any final concerns to be raised. If no concerns are raised then these will become stable on the nightly channel for Rust and will get released as part of Rust 1.54.

    Once this all lands the std::arch::wasm32 module in Rust's standard library (and the corresponding core::arch::wasm32 module) will have all the necessary functions/intrinsics/types to generate wasm binaries that use this proposal.

  20. kleisauke commented on Jun 24, 2021

    @kleisauke

    Node.js now supports the final SIMD opcodes as of version 16.4.0, since V8 was updated to 9.1.269.36 (nodejs/node#38273).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions