[Wasm RyuJIT] Implement SP/FP delta computation - #132236
Conversation
|
Azure Pipelines: Successfully started running 6 pipeline(s). 10 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
There was a problem hiding this comment.
Pull request overview
Implements Wasm RyuJIT stack-pointer/frame-pointer delta helpers to replace prior NYI stubs, enabling callers that compute frame-relative offsets (e.g., for unwind/stack layout logic) to function without hitting Wasm-specific NYIs.
Changes:
- Implemented
CodeGenInterface::genCallerSPtoInitialSPdelta()for Wasm based on the fixed linear-memory frame size. - Implemented
CodeGenInterface::genCallerSPtoFPdelta()for Wasm using existing delta relationships and added basic sign assertions. - Removed
NYI_WASM(...)stubs for the above helpers and forgenSPtoFPdelta()(kept as0per Wasm frame model).
Suppressed comments (1)
src/coreclr/jit/codegenwasm.cpp:4495
- Local variable name
callerSPToInitialSPDeltais inconsistent with the establishedcallerSPtoInitialSPdeltanaming used across other backends. Renaming improves consistency and makes grepping/comparison across targets easier.
int callerSPToInitialSPDelta = -genTotalFrameSize();
assert(callerSPToInitialSPDelta <= 0);
return callerSPToInitialSPDelta;
1f4b7e0 to
9d7ac0f
Compare
Align local variable naming and expression ordering with the other codegen backends. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3012b73e-652d-434c-9490-80cac47167fa
|
Azure Pipelines: Successfully started running 6 pipeline(s). 10 pipeline(s) were filtered out due to trigger conditions. There may be pipelines that require an authorized user to comment /azp run to run. |
|
Tagging subscribers to 'arch-wasm': @lewing, @pavelsavara |
AndyAyersMS
left a comment
There was a problem hiding this comment.
We shouldn't be calling these so does it make sense to implement them?
If we don't think we'll ever need them, can we mark them as |
I think so, yes. Just make sure the compiler is ok with it. |
These are currently unused but fairly simple to implement on Wasm to get rid of the NYIs.