Skip to content

[RyuJit/WASM] Longer-term TODOs #121865

@SingleAccretion

Description

@SingleAccretion

A list of things that will need to be fixed before the work can be considered functional:

  1. genPoisonFrame implementation.
  2. Stack alignment in lvaAlignFrame.
  3. [Wasm RyuJit] local stores #122390 - remove code from STORE_LCL_VAR codegen that deals with non-candidates, add asserts to such effect.
    • Once we have some minimal RA.
  4. Fix untracked debug scopes in siOpenScopesForNonTrackedVars.
  5. Remove #ifdef TARGET_WASM from the JMC insertion path since once we have proper WASM CG2 collections and/or call emit support.
  6. Fix the single-IG restriction of the prolog so that we don't need to worry about methods with a large number of non-enregistered arguments overflowing it. Ref: [RyuJit/WASM] Establish SP & FP and home register arguments #123270.
  7. Set maxUncheckedOffset and related entries to zero; fix issues where the jit is relying on null checks for small offsets (see discussion here -- part of [Wasm RyuJit] throw helper / null check preliminaries #123053
  8. There are many places in the JIT where we assume that constants must either be type I4 or type I and that's not the case for Wasm 32 bit. Figure out a way to systematically fix this.
  9. Consider getting rid of GT_CNS_LONG so there is just one way to represent constant ints regardless of bitness.
  10. Find all places that avoid creating bitcasts for !TARGET_64BIT and switch them to !LOWER_DECOMPOSE_LONGS instead.
  11. Decide if we want to use a stack cookie to guard the shadow stack

Part of #121208.

Metadata

Metadata

Assignees

No one assigned

    Labels

    arch-wasmWebAssembly architecturearea-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMItrackingThis issue is tracking the completion of other related issues.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions