commit | fc329ce22aa6b03ff9ac11c6fd5ea97728245ae3 | [log] [tgz] |
---|---|---|
author | Jakob Kummerow <jkummerow@chromium.org> | Thu Jan 10 13:09:28 2019 |
committer | Commit Bot <commit-bot@chromium.org> | Thu Jan 10 13:52:04 2019 |
tree | 1cb6e7004f90841c25e44e264c4c4b606d2b3383 | |
parent | 6733e9488b6cf02e48d9b8adf350926d7e1056c2 [diff] |
[ubsan] Fix various cases of undefined behavior Mostly signed integer overflows, and a few cases of double division by zero (which is defined by IEEE-754 to return Infinity (or NaN for 0/0) but is UB in C++). In base/ieee754.cc, use constants for NaN and Infinity instead of computing these values. In spaces-unittest.cc, ensure that a large enough allocation is used. Bug: v8:3770 Change-Id: I50d9a77dc860ef9993b7b269a5f8c117b0f62f9d Reviewed-on: https://chromium-review.googlesource.com/c/1403454 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#58701}
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
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/*
Please follow the instructions mentioned on the V8 wiki.