• Jaroslav Sevcik's avatar
    [generators] Store parameters in the generator object. · ea7499f5
    Jaroslav Sevcik authored
    Currently, we context allocate all parameters for generators.
    
    With this CL, we keep arguments on stack (unless they escape to inner
    closure) and copy them between the stack and the generator's register
    file on suspend/resume. This will save context allocation in most cases.
    
    Note: There is an asymmetry between suspend and resume.
    - Suspend copies arguments and registers to the generator.
    - Resume copies only the registers from the generator, the arguments
      are copied by the ResumeGenerator trampoline.
    
    Bug: v8:5164
    Change-Id: I6333898c60abf461b1ab1b5c6d3dc7188fa95649
    Reviewed-on: https://chromium-review.googlesource.com/1063712
    Commit-Queue: Jaroslav Sevcik <jarin@chromium.org>
    Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
    Reviewed-by: 's avatarBenedikt Meurer <bmeurer@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#53327}
    ea7499f5
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
docs Loading commit data...
gni Loading commit data...
include Loading commit data...
infra Loading commit data...
samples Loading commit data...
src Loading commit data...
test Loading commit data...
testing Loading commit data...
third_party Loading commit data...
tools Loading commit data...
.clang-format Loading commit data...
.editorconfig Loading commit data...
.git-blame-ignore-revs Loading commit data...
.gitattributes Loading commit data...
.gitignore Loading commit data...
.gn Loading commit data...
.vpython Loading commit data...
.ycm_extra_conf.py Loading commit data...
AUTHORS Loading commit data...
BUILD.gn Loading commit data...
CODE_OF_CONDUCT.md Loading commit data...
ChangeLog Loading commit data...
DEPS Loading commit data...
LICENSE Loading commit data...
LICENSE.fdlibm Loading commit data...
LICENSE.strongtalk Loading commit data...
LICENSE.v8 Loading commit data...
LICENSE.valgrind Loading commit data...
OWNERS Loading commit data...
PRESUBMIT.py Loading commit data...
README.md Loading commit data...
WATCHLISTS Loading commit data...
codereview.settings Loading commit data...
snapshot_toolchain.gni Loading commit data...