Go to file
Caitlin Potter b57366f2e1 [async-await] allocate HeapObjects for Await all at once.
Allocates the Await success/failure closures, their context, and
the two required JSPromise objects all at once in a single call,
rather than performing multiple allocations throughout the function.

Saves about 2kb of snapshot space on an x64.release build.

Performance impact of this change has not been measured yet.

BUG=v8:4483
R=ishell@chromium.org, jgruber@chromium.org

Change-Id: I8d911cb91f5d0e00544ad3ba608aa170f6b2f704
Reviewed-on: https://chromium-review.googlesource.com/549999
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Cr-Commit-Position: refs/heads/master@{#46360}
2017-06-30 13:24:49 +00:00
benchmarks
build_overrides Remove build_overrides/v8.gni. 2017-01-26 20:18:58 +00:00
docs
gni [build] Dump build configuration for all v8 executables 2017-06-29 08:06:45 +00:00
gypfiles [build] Clean up lto, gold plugin and cfi from gyp files 2017-06-27 15:45:18 +00:00
include Revert "[heap] Allow a minimum semi-space size of 512K." 2017-06-30 12:03:04 +00:00
infra [build] Fix x87 support in GN configs 2017-06-28 17:49:26 +00:00
samples Reland of land "Turn libbase into a component" (patchset #1 id:1 of https://codereview.chromium.org/2396933002/ ) 2016-10-07 07:56:52 +00:00
src [async-await] allocate HeapObjects for Await all at once. 2017-06-30 13:24:49 +00:00
test MIPS[64]: Implement MSA I5 instructions in simulator 2017-06-30 13:23:44 +00:00
testing Use GTEST_LANG_CXX11 in V8 2016-07-25 13:06:42 +00:00
third_party Remove myself from non-toplevel owners files 2017-06-28 10:00:48 +00:00
tools [parser] Skipping inner funcs: Associate data to SharedFunctionInfo, not Script. 2017-06-30 11:12:52 +00:00
.clang-format [clang-format] Don't derive pointer alignment 2017-01-17 09:28:19 +00:00
.gitignore [wasm] Remove the wasm-asmjs fuzzer 2017-06-21 10:59:35 +00:00
.gn For building v8 using gn on aix_ppc64, linux_s390x and linux_ppc64(both LE and BE). 2017-05-12 01:35:09 +00:00
.ycm_extra_conf.py
AUTHORS [build] Set MSVS .obj folders in gyp for v8_base 2017-06-30 12:40:19 +00:00
BUILD.gn [build] Slim down official archive and support different archive types 2017-06-29 10:20:35 +00:00
ChangeLog
CODE_OF_CONDUCT.md
codereview.settings Change presubmit to reference actually existing bot 2017-05-30 09:31:18 +00:00
DEPS Revert "[wasm] Update spec tests" 2017-06-30 12:28:22 +00:00
LICENSE
LICENSE.fdlibm Add LICENSE.fdlibm for all the fdlibm imported sources. 2016-06-09 07:17:03 +00:00
LICENSE.strongtalk
LICENSE.v8
LICENSE.valgrind
Makefile [build] Life support for top-level Makefile. 2017-06-07 13:10:40 +00:00
Makefile.android [build] Fix d8-for-Android builds 2016-05-20 12:10:45 +00:00
OWNERS Add COMPONENT tags to OWNERS files where appropriate 2017-05-22 10:15:28 +00:00
PRESUBMIT.py [test] Automatically add a noi18n bot for changes affecting Intl 2017-06-06 13:01:14 +00:00
README.md
snapshot_toolchain.gni MIPS[64]: Add support for big endian build using GN 2017-06-02 15:02:18 +00:00
WATCHLISTS [V8Tracing] Add lpy@ and fmeawad@ into watchlist for tracing/. 2017-05-22 19:40:17 +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.