Go to file
Omer Katz 698cfd1462 Add young generation check to PretenureAllocationSite
PretenureAllocationSite didn't check whether the given object is in new
space or not. Once given an object in old space, PretenureAllocationSite
tried to find a memento for it which didn't exist and crashed.

This CL adds a bailout for objects not in new space as there is no
memento and nothing to be done.

Bug: chromium:1244333
Change-Id: Ic26a6f5994ef9942decda69bb8a23fb730bf945c
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3140604
Reviewed-by: Michael Lippautz <mlippautz@chromium.org>
Commit-Queue: Omer Katz <omerkatz@chromium.org>
Cr-Commit-Position: refs/heads/main@{#76656}
2021-09-03 12:23:49 +00:00
.github [github] Close PRs created on the V8 GitHub mirror automatically 2021-01-12 08:39:59 +00:00
bazel [bazel] Initial support to mjsunit tests 2021-08-09 14:12:02 +00:00
build_overrides [build] Remove obsolete gn flag 2021-01-11 15:50:59 +00:00
custom_deps Use relative paths to OWNERS files 2019-08-12 13:52:52 +00:00
docs Add OWNERS for docs/ 2019-05-15 12:06:15 +00:00
gni [LOONG64] Add LoongArch64 backend 2021-08-16 13:05:19 +00:00
include cppgc: Fix compilation of young generation 2021-09-01 07:24:23 +00:00
infra [test] Run no-concurrent-inlining variant 2021-09-03 12:16:59 +00:00
samples Reland "[include] Split out v8.h" 2021-08-24 13:08:55 +00:00
src Add young generation check to PretenureAllocationSite 2021-09-03 12:23:49 +00:00
test [test] Run no-concurrent-inlining variant 2021-09-03 12:16:59 +00:00
testing [macros] Upstream Google3 changes 2021-06-24 16:36:14 +00:00
third_party Roll inspector-protocol to 32cf5f2bf4dc20c73ead291e68d2e2f6b638cd57 2021-07-09 13:01:24 +00:00
tools [test] Run no-concurrent-inlining variant 2021-09-03 12:16:59 +00:00
.bazelrc [bazel] Support build mode compilation 2021-07-13 10:14:16 +00:00
.clang-format
.clang-tidy
.editorconfig
.flake8 remove swarming_client 2021-08-24 10:39:33 +00:00
.git-blame-ignore-revs [infra] Update .git-blame-ignore-revs 2020-03-03 12:59:13 +00:00
.gitattributes
.gitignore remove swarming_client 2021-08-24 10:39:33 +00:00
.gn Revert "[build] Separate out inspector as a shared library" 2021-07-02 16:15:20 +00:00
.mailmap Restore consistency between .mailmap and AUTHORS 2021-06-24 08:58:04 +00:00
.vpython [tools] Implement confidence-based number of runs 2019-05-09 09:42:28 +00:00
.ycm_extra_conf.py [ycm] Fix python script 2021-07-29 09:48:32 +00:00
AUTHORS [date] Fix Date#getMinutes() test failures 2021-08-18 14:54:40 +00:00
BUILD.bazel heap: Ignore TSAN when walking the stack conservatively 2021-09-01 13:42:13 +00:00
BUILD.gn heap: Ignore TSAN when walking the stack conservatively 2021-09-01 13:42:13 +00:00
CODE_OF_CONDUCT.md
codereview.settings
COMMON_OWNERS Remove mythria@ from OWNERS 2021-08-26 13:21:32 +00:00
DEPS Update reclient version to re_client_version:0.40.0.40ff5a5. 2021-09-03 08:47:30 +00:00
DIR_METADATA Add DIR_METADATA files to v8. 2020-10-20 22:12:28 +00:00
ENG_REVIEW_OWNERS Remove rmcilroy from OWNERS. 2021-08-19 16:30:27 +00:00
INFRA_OWNERS Add team members as owners 2020-08-18 08:29:04 +00:00
INTL_OWNERS add ftang as owner 2020-04-24 19:19:36 +00:00
LICENSE [wasm] Draft version of C/C++ Wasm API 2019-04-17 16:00:26 +00:00
LICENSE.fdlibm
LICENSE.strongtalk
LICENSE.v8
LOONG_OWNERS [LOONG64] Add LoongArch64 backend 2021-08-16 13:05:19 +00:00
MIPS_OWNERS [mips] Request to be an owner of MIPS files 2020-11-23 09:43:49 +00:00
OWNERS Make autoroll account owner of auto-updated file 2021-08-24 15:05:13 +00:00
PPC_OWNERS Adding myself to relevant OWNERS files. 2020-11-02 16:37:28 +00:00
PRESUBMIT.py [bigint] Move multiplication to src/bigint/ 2021-04-19 15:40:43 +00:00
README.md
RISCV_OWNERS [riscv64] Change one of the owners for RISCV. 2021-04-20 14:39:26 +00:00
S390_OWNERS Adding myself to relevant OWNERS files. 2020-11-02 16:37:28 +00:00
WATCHLISTS cppgc: Report cppgc changes to oilpan-reviews@chromium.org 2021-08-30 14:28:32 +00:00
WORKSPACE [bazel] Adds ICU 2021-06-30 12:54:15 +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://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.