Skip to content
The official mirror of the V8 Git repository
Branch: master
Clone or download
mlippautz and Commit Bot Reland "[heap] Add global memory controller"
Provide a global memory controller used to compute limits for combined
on-heap and embedder memory. The global controller uses the same
mechanism (gc speed, mutator speed) and growing factors as the regular
on-heap controller.

Rely on V8's mechanisms for configured state that stops shrinking the
limit.

Reland:
- API fixes with overrides and default versions.
- Fix of depending on uninitialized values when using the old API.
- GCTracer: Fixed issue in speed computation.
- GCTracer: Added unittests.

This reverts commit 5e043f2.

Bug: chromium:948807
Change-Id: I0f81253b3e1a8b49a7ac107c012a15e33cb514d7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1622852
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Michael Lippautz <mlippautz@chromium.org>
Cr-Commit-Position: refs/heads/master@{#61735}
Latest commit 880c320 May 22, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
benchmarks [benchmarks] Move Array slice benchmarks to js-perf-test May 20, 2019
build_overrides Clean up infra owners May 15, 2019
custom_deps Clean up infra owners May 15, 2019
docs Add OWNERS for docs/ May 15, 2019
gni Clean up infra owners May 15, 2019
include Reland "[heap] Add global memory controller" May 22, 2019
infra [tools] Add arm64 builder MB configs May 17, 2019
samples Add OWNERS file for samples/ May 14, 2019
src Reland "[heap] Add global memory controller" May 22, 2019
test Reland "[heap] Add global memory controller" May 22, 2019
testing Remove dummy files created for rolling googletest. Mar 27, 2018
third_party [DevTools] Roll inspector-protocol to v8 May 22, 2019
tools [foozzie] Add interrupt-budget trial May 22, 2019
.clang-format [clang-format] Don't derive pointer alignment Jan 17, 2017
.clang-tidy [tool] Remove unfixed clang-tidy warnings to ease use. Oct 26, 2018
.editorconfig Add .editorconfig Jul 28, 2017
.git-blame-ignore-revs [build] Add DEPS formatting to hyper-blame Oct 9, 2017
.gitattributes .gitattributes: Mark minified emscripten js files as `-diff` Sep 19, 2018
.gitignore Add .ccls-cache to .gitignore Feb 26, 2019
.gn v8: Stop setting secondary_source. May 13, 2019
.vpython [tools] Implement confidence-based number of runs May 9, 2019
.ycm_extra_conf.py [ycm] Switch from gnu++11 to gnu++14 Nov 27, 2017
AUTHORS make deleted functions public in include May 13, 2019
BUILD.gn Fix file list belonging to libbase May 22, 2019
CODE_OF_CONDUCT.md Explicitly state that the Chromium Code of Conduct also applies to V8 Mar 2, 2016
COMMON_OWNERS Reland "Move logging and diagnostics related source files" May 20, 2019
ChangeLog [release] Merge ChangeLog back to master Dec 7, 2018
DEPS Update V8 DEPS. May 22, 2019
ENG_REVIEW_OWNERS Add eng review owners as escalation path May 15, 2019
INFRA_OWNERS Clean up infra owners May 15, 2019
LICENSE [wasm] Draft version of C/C++ Wasm API Apr 17, 2019
LICENSE.fdlibm Add LICENSE.fdlibm for all the fdlibm imported sources. Jun 9, 2016
LICENSE.strongtalk Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 Feb 3, 2011
LICENSE.v8 Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 Feb 3, 2011
LICENSE.valgrind Add LICENSE.v8, LICENSE.strongtalk and LICENSE.valgrind to the v8 Feb 3, 2011
OWNERS Add eng review owners as escalation path May 15, 2019
PRESUBMIT.py Reland "Move logging and diagnostics related source files" May 20, 2019
README.md [docs] Change links from old wiki to v8.dev Mar 7, 2019
WATCHLISTS Move code generation related files to src/codegen May 21, 2019
codereview.settings Make Gerrit the default code review for V8 Jun 30, 2017

README.md

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://v8.dev/docs

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 at v8.dev/docs/contribute.

You can’t perform that action at this time.