Skip to content

Tasks and Issues #398

@clover2123

Description

@clover2123

Language Standards

WebAssembly Standard

WebAssembly-JavaScript API Standard

WASI (WebAssembly System Interface) API

Test Suites


Current Issues

1. Code Duplication from Memory64 Support

  • Excessive class duplication in ByteCode.h
  • Increased code size and reduced maintainability
  • Solution: introduce base classes and helper macros
  • Refactor incrementally

2. Excessive Stack Usage in Debug Mode

  • interpret() uses ~8KB stack (vs. a few hundred bytes in release)
  • Problematic for recursive call tests
  • Cause: too many local variables with no stack slot reuse
  • Solution: reuse variables for uint32/uint64 indices and offsets

3. Missing WASI Preview1 Functions

  • Many WASI Preview1 APIs are not implemented
  • Low complexity (mainly interface additions)
  • Can be implemented quickly

4. Apple Clang Optimization Breaking Bytecode Mapping

  • Compiler merges interpreter loop paths
  • Breaks computed goto → bytecode mapping
  • Critical issue for JIT compilation
  • Current workaround: swap src/dst operands in some bytecodes
  • Required actions:
    • Verify the issue is fully resolved
    • Add release assert to prevent regression

Optimizations

Interpreter-JIT Hybrid Runtime Execution

  • Use interpretation for cold functions and JIT compilation for hot functions

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions