Go to file
Caitlin Potter b53189e8af [parser] don't generate unnecessary ADDs for template strings
Avoid generating ADDs when concatenating the empty string with other
template parts. This prevents the creation of useless feedback slots,
and reduces the number of extra dispatches.

The impact on performance is negligible.

BUG=v8:7415

Change-Id: I7ef3806b53f7252f3a86f7007ae7050ac697c1e3
Reviewed-on: https://chromium-review.googlesource.com/938145
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Adam Klein <adamk@chromium.org>
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Cr-Commit-Position: refs/heads/master@{#51669}
2018-03-01 22:01:37 +00:00
benchmarks Fix common misspellings 2017-08-02 09:35:28 +00:00
build_overrides [ndk] Change android ndk root for v8 2018-01-11 08:10:33 +00:00
docs
gni Disable snapshots in 64-bit win/cross builds for now. 2018-02-26 10:13:49 +00:00
include [bigint] Expose BigInt on the API 2018-03-01 18:58:38 +00:00
infra [CQ] Let msvc-compile block CQ 2018-02-27 19:50:35 +00:00
samples [sample] fix potential memory leak. 2018-02-21 13:06:18 +00:00
src [parser] don't generate unnecessary ADDs for template strings 2018-03-01 22:01:37 +00:00
test [bigint] Fix tie-to-even case in BigInt::ToNumber 2018-03-01 19:46:57 +00:00
testing [gyp] move build targets for tests to gypfiles. 2018-01-30 06:31:00 +00:00
third_party Move detect_v8_host_arch out of gypfiles. 2018-01-31 08:21:01 +00:00
tools [wasm] Turn {WasmDebugInfo} into a proper {Struct}. 2018-03-01 19:34:07 +00:00
.clang-format [clang-format] Don't derive pointer alignment 2017-01-17 09:28:19 +00:00
.editorconfig Add .editorconfig 2017-07-28 13:39:24 +00:00
.git-blame-ignore-revs [build] Add DEPS formatting to hyper-blame 2017-10-09 14:08:45 +00:00
.gitignore [gyp] remove gyp files. 2018-02-08 20:04:06 +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
.vpython Add a comment for the VPython dep 2017-10-25 12:23:35 +00:00
.ycm_extra_conf.py [ycm] Switch from gnu++11 to gnu++14 2017-11-27 07:48:21 +00:00
AUTHORS Reland: Reimplement Object.entries/values as CSA to optimize performance. 2018-02-08 10:12:32 +00:00
BUILD.gn [objects.h splitting] Move Microtask-related classes. 2018-02-27 10:44:53 +00:00
ChangeLog [tools] Merge ChangeLog from latest release 2017-12-19 12:30:56 +00:00
CODE_OF_CONDUCT.md
codereview.settings Make Gerrit the default code review for V8 2017-06-30 17:37:37 +00:00
DEPS Update V8 DEPS. 2018-03-01 14:53:54 +00:00
LICENSE
LICENSE.fdlibm
LICENSE.strongtalk
LICENSE.v8
LICENSE.valgrind
OWNERS Adding a few more wasm related OWNERS. 2018-03-01 20:19:07 +00:00
PRESUBMIT.py [gyp] remove gyp files. 2018-02-08 20:04:06 +00:00
README.md
snapshot_toolchain.gni MIPS[64]: Generate snapshots on MIPS big-endian targets 2017-11-24 19:00:32 +00:00
WATCHLISTS Remove v8-x87-ports@ from WATCHLIST 2018-02-26 19:56:21 +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.