Go to file
Ulan Degenbaev f39a3b9918 Make code_data_container and kind_specific_flags accessors atomic.
The concurrent marker needs to access the kind_specific_flags to decide
whether an embedded object reference is weak or not.

This patch turns the Code::code_data_container() into an acquire/release
atomic accessor and makes CodeDataContainer::kind_specific_flags a
relaxed atomic accessor.

Bug: v8:8459
Change-Id: I5251fed4e7b3315f8e229dfcfe2c23f611f4b333
Reviewed-on: https://chromium-review.googlesource.com/c/1337746
Reviewed-by: Hannes Payer <hpayer@chromium.org>
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Ulan Degenbaev <ulan@chromium.org>
Cr-Commit-Position: refs/heads/master@{#57638}
2018-11-20 11:06:04 +00:00
benchmarks Reland: [builtins] Implement Array.prototype.slice in Torque 2018-10-19 21:27:19 +00:00
build_overrides [ndk] Change android ndk root for v8 2018-01-11 08:10:33 +00:00
custom_deps [build] Add common directory for custom deps 2018-06-08 19:23:02 +00:00
docs
gni [build] disable asan on Windows for Torque 2018-10-10 11:47:40 +00:00
include [api] Introduce Object::New() pendant of Object.create(). 2018-11-16 12:15:00 +00:00
infra [test] Use even less parallelism to prevent OOMs on ODROIDs 2018-11-14 09:07:35 +00:00
samples Add a sample that uses the JS API to create wasm 2018-06-07 23:43:38 +00:00
src Make code_data_container and kind_specific_flags accessors atomic. 2018-11-20 11:06:04 +00:00
test MIPS: Fix build of unitttests in debug mode 2018-11-20 11:01:44 +00:00
testing Remove dummy files created for rolling googletest. 2018-03-27 05:55:56 +00:00
third_party Update V8 DEPS. 2018-11-14 20:08:33 +00:00
tools Reland "[regexp] Introduce species constructor protector for regexps." 2018-11-19 10:58:01 +00:00
.clang-format
.clang-tidy [tool] Remove unfixed clang-tidy warnings to ease use. 2018-10-26 07:40:32 +00:00
.editorconfig
.git-blame-ignore-revs
.gitattributes .gitattributes: Mark minified emscripten js files as -diff 2018-09-19 16:27:10 +00:00
.gitignore Ignore .torquelint-cache 2018-10-24 10:24:11 +00:00
.gn [test] Remove obsolete test262 archive extract 2018-03-28 13:52:15 +00:00
.vpython [tools] Correctly identify and report test crashes and infra failures 2018-10-30 15:05:40 +00:00
.ycm_extra_conf.py [ycm] Switch from gnu++11 to gnu++14 2017-11-27 07:48:21 +00:00
AUTHORS [typedarray] Use fast path for Float32Array.from(float_64_array) and similar 2018-10-26 09:47:46 +00:00
BUILD.gn [wasm] Adjust the traphandler implementation for MacOS 2018-11-20 11:03:54 +00:00
ChangeLog [tools] Merge ChangeLog from latest release 2017-12-19 12:30:56 +00:00
CODE_OF_CONDUCT.md
codereview.settings
DEPS Update V8 DEPS. 2018-11-20 03:26:47 +00:00
LICENSE Add antlr4 runtime library to support Torque 2018-04-10 10:01:01 +00:00
LICENSE.fdlibm
LICENSE.strongtalk
LICENSE.v8
LICENSE.valgrind
OWNERS Reduce wasm OWNERS to current team members 2018-10-15 14:47:49 +00:00
PRESUBMIT.py [tools] Correctly identify and report test crashes and infra failures 2018-10-30 15:05:40 +00:00
README.md
snapshot_toolchain.gni Reland "Add Windows ARM64 ABI support to V8" 2018-10-24 19:46:36 +00:00
WATCHLISTS [watchlist] Add csa and torque watchlists and add myself 2018-11-15 10:01:08 +00:00

V8 JavaScript Engine

V8 is Google's open source JavaScript engine.

V8 implements ECMAScript as specified in ECMA-262.

V8 is written in C++ and is used in Google Chrome, the open source browser from Google.

V8 can run standalone, or can be embedded into any C++ application.

V8 Project page: https://github.com/v8/v8/wiki

Getting the Code

Checkout depot tools, and run

    fetch v8

This will checkout V8 into the directory v8 and fetch all of its dependencies. To stay up to date, run

    git pull origin
    gclient sync

For fetching all branches, add the following into your remote configuration in .git/config:

    fetch = +refs/branch-heads/*:refs/remotes/branch-heads/*
    fetch = +refs/tags/*:refs/tags/*

Contributing

Please follow the instructions mentioned on the V8 wiki.