commit | 18d05c8727fc9818df9012621c30e2ba8db16b96 | [log] [tgz] |
---|---|---|
author | Mythri <mythria@chromium.org> | Fri Jun 16 14:10:53 2017 |
committer | Commit Bot <commit-bot@chromium.org> | Fri Jun 16 14:39:52 2017 |
tree | 658aed278d3bf7337877e3970c806b3cc143290f | |
parent | c2c4de293fdeaedc9e0fe5e02c31dd77b185d4d2 [diff] |
[Interpreter] Refactor arithmetic bytecode handlers. The Smi versions of arithmetic bytecodes (AddSmi, SubSmi, MulSmi, DivSmi, ModSmi) have a fast path for Smi case and call to a builtin on the slow path. However, this builtin is only used by these bytecode handlers. This cl removes the builtins and inlines them into bytecode handlers. This will also save few checks in the slow-path. Subtract, multiply, divide and modulus also share the same checks to collect type feedback on several cases. This cl also refactors them to share the same code. Also removed a couple of TODOs that are no longer relevant. Bug: v8:4280, v8:6474 Change-Id: Id23bd61c2074564a1beacb0632165f52370ff226 Reviewed-on: https://chromium-review.googlesource.com/530845 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#45982}
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.