• clemensh's avatar
    [wasm] Provide better stack traces for asm.js code · 5d9fa102
    clemensh authored
    For the asm.js to WASM pipeline, the current stack traces only show
    low-level WASM information.
    This CL maps this back to asm.js source positions.
    It does so by attaching the asm.js source Script to the compiled WASM
    module, and emitting a delta-encoded table which maps from WASM byte
    offsets to positions within that Script. As asm.js code does not throw
    exceptions, we only store a mapping for call instructions.
    
    The new AsmJsWasmStackFrame implementation inherits from
    WasmStackFrame, but contains the logic to provide the source script and
    the position inside of it.
    What is still missing is the JSFunction object returned by
    CallSite.getFunction(). We currently return null.
    
    R=jgruber@chromium.org, titzer@chromium.org
    BUG=v8:4203
    
    Review-Url: https://codereview.chromium.org/2404253002
    Cr-Commit-Position: refs/heads/master@{#40205}
    5d9fa102
asm-wasm-builder.cc 63.6 KB