• Daniel Clifford's avatar
    [torque]: Class declarations · d0e95c7a
    Daniel Clifford authored
    Class declarations support structured heap data that is a subtype of
    HeapObject. Only fields of Object subtypes (both strong and weak)
    are currently supported (no scalar fields yet).
    
    With this CL, both the field list macro used with the C++
    DEFINE_FIELD_OFFSET_CONSTANTS macro (to make field offset constants) as
    well as the Torque "operator '.field'" macros are generated for the
    classes declared in Torque. This is a first step to removing the
    substantial amount of duplication and boilerplate code
    needed to declare heap object classes.
    
    As a proof of concept, and handful of class field definitions,
    including those for non trivial classes like JSFunction, have been
    moved to Torque.
    
    Bug: v8:7793
    Change-Id: I2fa0b53db65fa6f5fe078fb94e1db3418f908753
    Reviewed-on: https://chromium-review.googlesource.com/c/1373971
    Commit-Queue: Daniel Clifford <danno@chromium.org>
    Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#58704}
    d0e95c7a
Name
Last commit
Last update
benchmarks Loading commit data...
build_overrides Loading commit data...
custom_deps 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...
.clang-tidy 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...