• Andreas Haas's avatar
    [wasm][ia32] Add an additional stack check for functions with big frames · 2064c1f9
    Andreas Haas authored
    This is the ia32 implementation of the CL
    https://codereview.chromium.org/2763593002
    
    Original message:
    
    [wasm][arm] Add an additional stack check for functions with big frames.
    
    Stack overflow checks are typically implemented as part of the TurboFan
    graph of a function. This means that the stack check code is executed
    after frame construction. When a frame is too big, though, there may not
    be enough space on the stack anymore to throw the stack overflow
    exception after frame construction. With this CL we do an additional
    stack check before frame construction for functions with big frames.
    
    As discussed offline with mstarzinger, I do this change currently only
    for WebAssembly.
    
    This CL contains only the changes for arm. I will do the other platforms
    in separate CLs.
    
    Bug:v8:6318
    
    R=neis@chromium.org, titzer@chromium.org
    
    Change-Id: Ibeedc5c4c4571cffd3a9c58016ddc44b64e2bf02
    Reviewed-on: https://chromium-review.googlesource.com/568305
    Commit-Queue: Andreas Haas <ahaas@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Reviewed-by: 's avatarBen Titzer <titzer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#46711}
    2064c1f9
Name
Last commit
Last update
..
benchmarks Loading commit data...
cctest Loading commit data...
common Loading commit data...
debugger Loading commit data...
fuzzer Loading commit data...
inspector Loading commit data...
intl Loading commit data...
js-perf-test Loading commit data...
memory Loading commit data...
message Loading commit data...
mjsunit Loading commit data...
mkgrokdump Loading commit data...
mozilla Loading commit data...
preparser Loading commit data...
promises-aplus Loading commit data...
test262 Loading commit data...
unittests Loading commit data...
wasm-spec-tests Loading commit data...
webkit Loading commit data...
BUILD.gn Loading commit data...
bot_default.gyp Loading commit data...
bot_default.isolate Loading commit data...
default.gyp Loading commit data...
default.isolate Loading commit data...
optimize_for_size.gyp Loading commit data...
optimize_for_size.isolate Loading commit data...
perf.gyp Loading commit data...
perf.isolate Loading commit data...