1. 07 Dec, 2022 2 commits
  2. 30 Nov, 2022 2 commits
  3. 29 Nov, 2022 1 commit
  4. 27 Nov, 2022 1 commit
  5. 24 Nov, 2022 4 commits
  6. 19 Nov, 2022 1 commit
    • Yuyi Wang's avatar
      Use wiggle 2.0. (#568) · eaf5e9d0
      Yuyi Wang authored
      Use wiggle 2.0 with custom features.
      
      Wiggle 2.0 still allows removing wasmtime dependencies.
      eaf5e9d0
  7. 18 Nov, 2022 1 commit
    • Robin Freyler's avatar
      Make `Store` `Send` and `Sync` (#566) · 44419e07
      Robin Freyler authored
      * make Arena<Idx, T> Send and Sync independent of Idx
      
      * make InstructionPtr Send but not Sync
      
      * add compile-time test to assert that Store is Send + Sync if T: Send+Sync
      
      * add more docs to unsafe Send impl of InstructionPtr
      
      * apply rustfmt
      44419e07
  8. 17 Nov, 2022 1 commit
  9. 12 Nov, 2022 1 commit
  10. 07 Nov, 2022 1 commit
    • Robin Freyler's avatar
      Refactor `wasmi_core::Trap` and make it more similar to Wasmtime's `Trap` (#559) · 53eac5cc
      Robin Freyler authored
      * add Trap::{i32_exit, i32_exit_status} methods
      
      This i32_exit constructor allows for simple support of WASI function exit codes.
      
      * rename Trap::as_code -> trap_code (as in Wasmtime)
      
      * make Trap derive Clone
      
      This made it necessary to remove Trap::{as_host_mut, into_host} methods.
      
      * remove Trap::{is_host, is_code}
      
      Use trap_code().is_some() and as_host().is_some() methods for now instead.
      
      * move i32_exit constructor down in the file
      
      * use Wasmtime TrapCode identifiers
      
      - I think those names are more precise.
      - Also it is less of a confusion to port wasmi to to Wasmtime and vice versa.
      
      * use wildcare for integer division impl
      
      * clean up impl_integer macro_rules macro expansion a bit
      
      * add #[inline] to Trap constructor
      
      * improve docs
      
      * rename TrapInner::Code -> InstructionTrap
      
      * add TrapInner::Message variant and Trap::new (like in Wasmtime)
      
      * rename TrapInner -> TrapReason (like Wasmtime)
      
      * fix #[cold] comments
      
      * add Trap::display_reason method
      
      * improve Trap docs
      
      * add Trap::downcast_ref API
      
      * remove Trap::as_host API
      
      * remove Sized trait bound from From<impl HostError> for Trap
      
      * remove DisplayTrapReason again (not really useful without backtraces)
      
      * fix no_std builds
      
      * apply rustfmt
      
      * apply clippy suggestion
      
      * remove #[inline] from From<TrapCode> for Trap impl
      
      This restores performance of wasmi.
      53eac5cc
  11. 04 Nov, 2022 5 commits
  12. 03 Nov, 2022 1 commit
  13. 02 Nov, 2022 1 commit
  14. 01 Nov, 2022 1 commit
  15. 31 Oct, 2022 4 commits
  16. 26 Oct, 2022 1 commit
    • Robin Freyler's avatar
      Cleanup some test code (#540) · 37f3365c
      Robin Freyler authored
      * add convenience write_slice function
      
      * remove commented out code
      
      * rename some bindings in FuncType::new
      
      * cleanup FuncType display tests
      
      * rename assert_func_type -> assert_display
      
      * add FuncType constructor unit tests
      
      * add doc comment about cloning FuncTypes
      
      * move write_slice function down in file
      37f3365c
  17. 25 Oct, 2022 1 commit
  18. 23 Oct, 2022 3 commits
  19. 21 Oct, 2022 3 commits
    • Robin Freyler's avatar
      Refactor, cleanup and optimize Wasm module instantiation (#531) · a7c6f3c4
      Robin Freyler authored
      * no longer make InstanceEntityBuilder own an InstanceEntity
      
      This allows for both structs to have different internal layouts optimized for their respective use cases.
      
      * use Box<str> instead of String in InstanceEntity[Builder]
      
      * add ExportsIter::size_hint impl
      
      * remove lifetime from InstancePre
      
      * add docs to some utility methods of InstanceEntityBuilder
      
      * cleanup instantiate code
      
      * preallocate buffers properly upon module instantiation
      
      * no longer clone Module::func_types upon instantiating
      
      The func_types buffer is now simply reused via efficient ref counting.
      
      * apply rustfmt
      
      * use Vec::reserve_exact in InstanceEntityBuilder::new
      
      * fix no_std build error
      
      * fix some internal doc links
      
      * apply clippy suggestions
      a7c6f3c4
    • Robin Freyler's avatar
      chores: Improve fuzz testing infrastructure and add docs (#529) · 3a591c8a
      Robin Freyler authored
      * move fuzz testing infrastructure into workspace root
      
      * add fuzz testing chapter to CONTRIBUTING.md
      3a591c8a
    • Robin Freyler's avatar
      Overhaul Pages and Bytes types (#449) · 3a405bd9
      Robin Freyler authored
      * add Pages and Bytes to wasmi_core and remove memory_units dependency
      
      * adjust wasmi crate for changes in wasmi_core
      
      * apply rustfmt
      
      * apply clippy suggestions
      
      * apply rustfmt
      
      * add more docs to some Pages methods
      
      * add infallible From<u16> constructor impl for Pages
      
      * simplify Pages::checked_add impl
      
      * apply rustfmt (?)
      
      * redesign Pages and Bytes entirely (again)
      
      * apply clippy suggestions
      3a405bd9
  20. 20 Oct, 2022 5 commits