Go to file
Toon Verwaest 8381ea7b29 Reland "[json] Speed up json parsing"
This is a reland of b0c4a8764b

Original change's description:
> [json] Speed up json parsing
>
> - scan using raw data pointers + GC callback
> - scan using scanner tables
> - cap internalizing large string values
> - inline fast transitioning logic
>
> Fixes previous CL by moving AllowHeapAllocation to callers of
> ReportUnexpectedCharacter where needed to make it clear we need to exit.
>
> Tbr: ulan@chromium.org
> Change-Id: Icfbb7cd536e0fbe153f34acca5d0fab6b5453d71
> Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591778
> Reviewed-by: Igor Sheludko <ishell@chromium.org>
> Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
> Commit-Queue: Toon Verwaest <verwaest@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#61159}

Change-Id: I0d713e02d243723df2d2a7c252eae44a6648b6b7
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1596444
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Ulan Degenbaev <ulan@chromium.org>
Commit-Queue: Toon Verwaest <verwaest@chromium.org>
Cr-Commit-Position: refs/heads/master@{#61247}
2019-05-06 15:27:57 +00:00
benchmarks
build_overrides
custom_deps
docs
gni
include [api] Deprecate one {SetFlagsFromString} variant 2019-05-06 14:23:28 +00:00
infra
samples
src Reland "[json] Speed up json parsing" 2019-05-06 15:27:57 +00:00
test Reland "[json] Speed up json parsing" 2019-05-06 15:27:57 +00:00
testing
third_party [DevTools] Add V8InspectorSession::state(), which returns binary (CBOR). 2019-05-03 16:54:51 +00:00
tools Remove outdated node scripts 2019-05-06 12:24:44 +00:00
.clang-format
.clang-tidy
.editorconfig
.git-blame-ignore-revs
.gitattributes
.gitignore
.gn
.vpython
.ycm_extra_conf.py
AUTHORS [arm64][turbofan] FP simplification 2019-05-06 08:25:22 +00:00
BUILD.gn Reland "[json] Speed up json parsing" 2019-05-06 15:27:57 +00:00
ChangeLog
CODE_OF_CONDUCT.md
codereview.settings
DEPS Update V8 DEPS. 2019-05-06 05:37:08 +00:00
LICENSE
LICENSE.fdlibm
LICENSE.strongtalk
LICENSE.v8
LICENSE.valgrind
OWNERS
PRESUBMIT.py
README.md
snapshot_toolchain.gni
WATCHLISTS

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.