forked from bytecodealliance/wasmtime
-
Notifications
You must be signed in to change notification settings - Fork 1
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge with upstream #272
Merged
Merged
Merge with upstream #272
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This was originally added long ago and this brings the method up-to-date with the current pulley opcode set.
…gine (bytecodealliance#9877) * bench-api: Allow recompiling with the same engine * Enable Pulley in the bench API
* pulley: Add macro `CallN` instructions This commit adds new macro instructions to assist with speeding up calls between functions. Pulley's previous `Call` instruction was similar to native call instructions where arguments/results are implicitly in the right location according to the ABI, but movement between registers is more expensive with Pulley than with native architectures. The `CallN` instructions here enable listing a few arguments (only integer registers) in the opcode itself. This removes the need for individual `xmov` instructions into individual registers and instead it can all be done within the opcode handlers. This additionally enables passing the same argument twice to a function to reside only in one register. Finally parallel-copies between these registers are supported as the interpreter loads all registers and then stores all registers. These new instructions participate in register allocation differently from before where the first few arguments are allowed to be in any register and no longer use `reg_fixed_use`. All other arguments (and all float arguments for example) continue to use `reg_fixed_use`. Locally sightglass reports this change speeding up `pulldown-cmark` by 2-10%. On a `fib(N)` micro-benchmark it didn't help as much as I was hoping that it was going to. * Fix MSRV
This commit moves testing of x86_64-apple-darwin from `macos-13` macs to the `macos-14` image which is newer. The hope is that these newer images, being natively M1 machines, are faster to compile and less flaky. A number of CI builds recently have failed due to seeming CI issues with the older machines, so this'll hopefully keep the same amount of testing while improving robustness.
* use trait_variant and async-func-in-trait instead of async-trait * remove all async_trait::async_trait related to bindgen! proc_macro * remove pub use async_trait::async_trait in __internal * bless `component-macro` tests to reflect `async_trait` removal Signed-off-by: Joel Dice <joel.dice@fermyon.com> * add `trait-variant` exemption to supply-chain/config.toml This exempts the `trait-variant` crate from vetting since it is published and maintained by the rust-lang organization and is officially recommended by the Rust project. Signed-off-by: Joel Dice <joel.dice@fermyon.com> --------- Signed-off-by: Joel Dice <joel.dice@fermyon.com> Co-authored-by: Joel Dice <joel.dice@fermyon.com>
* Remove float canonicalization from components This was removed from the spec quite awhile back so this catches up the runtime to the spec where this is no longer required. Closes bytecodealliance#9826 * Update tests
…alliance#9883) * Fix build on 32-bit Windows; consolidate CI platform checks This commit fixes the build of the `wasmtime` crate and CLI on 32-bit Windows. This required adding some extra bits for trap handling and a stub for "unimplemented" for unwind information registration. This then additionally refactored our CI configuration to place all of the cross-compile checks in one matrix instead of spread out across a few jobs. Closes bytecodealliance#9882 prtest:platform-checks * Add "join" node in CI * Who really knows yml syntax * Remove dead checks * Fix only-`runtime` build on Windows
* init * fix failed * fix failed
* add async example * fix bindgen bug to make CI happy See bytecodealliance#9822 (comment) * update test expectations * remove async_trait
…ance#9887) * Don't forcibly enable `gc` feature with cli-flags crate Helps keep the `gc` feature out of the "min" build. * Fix standalone build of wasmtime-cli-flags
Signed-off-by: linchizhen <jiayanbing@yeah.net>
* Documentation * Add WASMTIME_LOG_NO_CONTEXT When using trace logging for compiler debugging, the usual 'context': time, level, target, are just visual noise. Add an environment variable to disable them.
The tool stack overflows in default configurations (Windows/CI).
…` parameter (bytecodealliance#9898) * Add an instance method test * Transform instance methods into static methods with a '__this' parameter
Signed-off-by: Jack Drogon <jack.xsuperman@gmail.com>
* ISLE: improve syntax BNF * fixes
* pulley: Implement 16x8 arith. * leverage 32-bit arithmetic * fix
Signed-off-by: Xuanwo <github@xuanwo.io>
* pulley: Implement vector sqmul_round_sat * parenthesize to bring out op. order
* get simd_i8x16_arith2 passing * get simd_i64x2_arith2 passing * get simd_i8x16_sat_arith passing * get simd_i16x8_sat_arith passing
…9915) * c-api: Enable debugger DWARF export for guest code In order to allow source level debugging of hosted webassembly code in C-based embeddings, we must enable the debug-builtins cargo feature when building the C api. * c-api test: assert that the debug info is created Previously we were testing and confirming only that the options can be set using the API, not that they actually have any effect. In order to (simply) confirm that enabling debug information actually created some debug information, we can somewhat hackily inspect the generated GDB JIT descriptor to see that it's populated.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.