- 13 Jan, 2016 1 commit
-
-
vogelheim authored
(fast_handler *has* a more specific type; the TODO is no longer applicable.) R=epertoso@chromium.org BUG= Review URL: https://codereview.chromium.org/1577233003 Cr-Commit-Position: refs/heads/master@{#33260}
-
- 05 Jan, 2016 1 commit
-
-
bmeurer authored
Almost all of the Date builtins always call into C++ at least once anyway, so parsing, compiling and executing the JavaScript wrappers is just a waste of time. The most important part here is the Date constructor itself, which is one of the blockers for new.target in TurboFan, because compiling the Date constructor takes too much time with TurboFan (for no reason since we end up in C++ anway). R=cbruni@chromium.org Review URL: https://codereview.chromium.org/1556333002 Cr-Commit-Position: refs/heads/master@{#33109}
-
- 27 Dec, 2015 2 commits
-
-
bmeurer authored
According to the ES2015 specification, bound functions are exotic objects, and thus don't need to be implemented as JSFunctions. So we introduce a new JSBoundFunction type to represent bound functions and make them optimizable. This already improves the performance of calling or constructing bound functions by 10-100x depending on the use case because we avoid the crazy dance between JavaScript and C++ that was implemented in v8natives.js previously. There's still room for improvement in the performance of actually creating bound functions, which is also relevant in practice, but we already have a plan how to accomplish that later. The mips/mips64 ports were contributed by akos.palfi@imgtec.com. CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel BUG=chromium:535408, chromium:571299, v8:4629 LOG=n Committed: https://crrev.com/ca8623eaa468cba65a5adafcdfb4615966f43ce2 Cr-Commit-Position: refs/heads/master@{#33042} Review URL: https://codereview.chromium.org/1542963002 Cr-Commit-Position: refs/heads/master@{#33044}
-
bmeurer authored
Revert of [runtime] Introduce dedicated JSBoundFunction to represent bound functions. (patchset #14 id:260001 of https://codereview.chromium.org/1542963002/ ) Reason for revert: Breaks arm64 sim nosnap: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20nosnap%20-%20debug/builds/805/steps/Check/logs/function-bind Original issue's description: > [runtime] Introduce dedicated JSBoundFunction to represent bound functions. > > According to the ES2015 specification, bound functions are exotic > objects, and thus don't need to be implemented as JSFunctions. So > we introduce a new JSBoundFunction type to represent bound functions > and make them optimizable. This already improves the performance of > calling or constructing bound functions by 10-100x depending on the > use case because we avoid the crazy dance between JavaScript and C++ > that was implemented in v8natives.js previously. > > There's still room for improvement in the performance of actually > creating bound functions, which is also relevant in practice, but > we already have a plan how to accomplish that later. > > The mips/mips64 ports were contributed by akos.palfi@imgtec.com. > > CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel > BUG=chromium:535408, chromium:571299, v8:4629 > LOG=n > > Committed: https://crrev.com/ca8623eaa468cba65a5adafcdfb4615966f43ce2 > Cr-Commit-Position: refs/heads/master@{#33042} TBR=cbruni@chromium.org,hpayer@chromium.org,yangguo@chromium.org,akos.palfi@imgtec.com NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:535408, chromium:571299, v8:4629 Review URL: https://codereview.chromium.org/1552473002 Cr-Commit-Position: refs/heads/master@{#33043}
-
- 26 Dec, 2015 1 commit
-
-
bmeurer authored
According to the ES2015 specification, bound functions are exotic objects, and thus don't need to be implemented as JSFunctions. So we introduce a new JSBoundFunction type to represent bound functions and make them optimizable. This already improves the performance of calling or constructing bound functions by 10-100x depending on the use case because we avoid the crazy dance between JavaScript and C++ that was implemented in v8natives.js previously. There's still room for improvement in the performance of actually creating bound functions, which is also relevant in practice, but we already have a plan how to accomplish that later. The mips/mips64 ports were contributed by akos.palfi@imgtec.com. CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel BUG=chromium:535408, chromium:571299, v8:4629 LOG=n Review URL: https://codereview.chromium.org/1542963002 Cr-Commit-Position: refs/heads/master@{#33042}
-
- 22 Dec, 2015 1 commit
-
-
cbruni authored
Add API-accessors for [[ProxyTarget]], [[ProxyHandler]]. Additionally create new proxies and revoke proxies via the API. BUG=v8:1543 LOG=n Review URL: https://codereview.chromium.org/1542943002 Cr-Commit-Position: refs/heads/master@{#33013}
-
- 16 Dec, 2015 1 commit
-
-
akodat authored
If many threads use the same Isolate (or many Isolates) and then terminate, their PerIsolateThreadData objects are never cleaned up, resulting in a slow memory leak and, worse, the PerIsolateThreadData chain getting larger and larger, adversely affecting performance. In this situation, embedders will now be encouraged to apply DiscardThreadSpecificMetadata against any Isolate a thread is done with, especially if the thread is about to terminate. Note that it is harmless to run DiscardThreadSpecificMetadata against an Isolate for which a thread has no thread data and per-Isolate thread data can be reestablished if a thread starts using an Isolate again after running DiscardThreadSpecificMetadata against it. It is, however, an embedder error to run DiscardThreadSpecificMetadata against an Isolate in thread with a Locker for the Isolate in the stack or against an Entered Isolate. This change cannot cause any change in behavior in existing apps as the only added coded can only be reached via the new DiscardThreadSpecificMetadata method. R=Jakob, jochen BUG= Review URL: https://codereview.chromium.org/1522703002 Cr-Commit-Position: refs/heads/master@{#32909}
-
- 11 Dec, 2015 2 commits
-
-
vogelheim authored
... using the RawMachineAssembler and the work in crrev.com/1407313004. The original change collided with crrev.com/1513543003. BUG=chromium:508898 LOG=Y Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 Cr-Commit-Position: refs/heads/master@{#32742} patch from issue 1474543004 at patchset 260001 (http://crrev.com/1474543004#ps260001) Committed: https://crrev.com/ee5c38d7db907ff86dd4049721c0cb4bc90a6c4d Cr-Commit-Position: refs/heads/master@{#32753} patch from issue 1504713012 at patchset 20001 (http://crrev.com/1504713012#ps20001) Review URL: https://codereview.chromium.org/1518703002 Cr-Commit-Position: refs/heads/master@{#32786}
-
adamk authored
The main impetus is to improve performance when --harmony-tostring is enabled, thanks to using a generic property load instead of a megamorphic IC. This also reduces duplication, as the API function v8::Object::ObjectProtoToString can share the runtime implementation. The only functional change in this patch is to drop an accidental difference between the JS and API implementations: the arguments object should toString as "[object Arguments]". The JS side was corrected in https://code.google.com/p/v8/source/detail?r=3279, but the API version was missed in that patch. BUG=chromium:555127, v8:3502 LOG=n CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng;tryserver.blink:linux_blink_rel Review URL: https://codereview.chromium.org/1509533003 Cr-Commit-Position: refs/heads/master@{#32777}
-
- 10 Dec, 2015 4 commits
-
-
vogelheim authored
Revert of Re-land FastAccessorBuilder. (patchset #2 id:20001 of https://codereview.chromium.org/1504713012/ ) Reason for revert: Meeh. Now "V8 Linux - gcmole" bot has issues; apparently due to a somewhat exotic builder configuration. Original issue's description: > Re-land FastAccessorBuilder. > > ... using the RawMachineAssembler and the work in crrev.com/1407313004. > > The original change collided with crrev.com/1513543003. > > BUG=chromium:508898 > LOG=Y > > Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 > Cr-Commit-Position: refs/heads/master@{#32742} > > patch from issue 1474543004 at patchset 260001 (http://crrev.com/1474543004#ps260001) > > Committed: https://crrev.com/ee5c38d7db907ff86dd4049721c0cb4bc90a6c4d > Cr-Commit-Position: refs/heads/master@{#32753} TBR=epertoso@chromium.org,mstarzinger@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:508898 Review URL: https://codereview.chromium.org/1517683002 Cr-Commit-Position: refs/heads/master@{#32754}
-
vogelheim authored
... using the RawMachineAssembler and the work in crrev.com/1407313004. The original change collided with crrev.com/1513543003. BUG=chromium:508898 LOG=Y Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 Cr-Commit-Position: refs/heads/master@{#32742} patch from issue 1474543004 at patchset 260001 (http://crrev.com/1474543004#ps260001) Review URL: https://codereview.chromium.org/1504713012 Cr-Commit-Position: refs/heads/master@{#32753}
-
vogelheim authored
Revert of Implement Fast Accessor Builder (patchset #14 id:260001 of https://codereview.chromium.org/1474543004/ ) Reason for revert: Broke the build, apparently. Original issue's description: > Implement FastAccessorBuilder. > > ... using the RawMachineAssembler and the work in cl/1407313004 > > BUG=chromium:508898 > LOG=Y > > Committed: https://crrev.com/515d9ccd8e6df7bf2ca01e2a55aaad30226399e1 > Cr-Commit-Position: refs/heads/master@{#32742} TBR=epertoso@chromium.org,bmeurer@chromium.org,jochen@chromium.org,mstarzinger@chromium.org,mvstanton@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:508898 Review URL: https://codereview.chromium.org/1513203002 Cr-Commit-Position: refs/heads/master@{#32744}
-
vogelheim authored
... using the RawMachineAssembler and the work in cl/1407313004 BUG=chromium:508898 LOG=Y Review URL: https://codereview.chromium.org/1474543004 Cr-Commit-Position: refs/heads/master@{#32742}
-
- 09 Dec, 2015 4 commits
-
-
jkummerow authored
In particular, return Maybe<bool> from any function that can throw, and use MAYBE_RETURN and RETURN_FAILURE macros consistently where applicable. No change in behavior intended. Review URL: https://codereview.chromium.org/1513713002 Cr-Commit-Position: refs/heads/master@{#32723}
-
verwaest authored
Make Error.prototype.toString spec compliant; and fix various side-effect-free error printing methods R=yangguo@chromium.org LOG=n Committed: https://crrev.com/5dffa35350d0f57402806e6bd87a914e1d5933e4 Cr-Commit-Position: refs/heads/master@{#32695} Review URL: https://codereview.chromium.org/1507273002 Cr-Commit-Position: refs/heads/master@{#32720}
-
machenbach authored
Revert of Make Error.prototype.toString spec compliant; and fix various side-effect-free error printing metho… (patchset #2 id:20001 of https://codereview.chromium.org/1507273002/ ) Reason for revert: [Sheriff] Breaks layout tests. Please rebase upstream first: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/3334 Original issue's description: > Make Error.prototype.toString spec compliant; and fix various side-effect-free error printing methods > > R=yangguo@chromium.org > LOG=n > > Committed: https://crrev.com/5dffa35350d0f57402806e6bd87a914e1d5933e4 > Cr-Commit-Position: refs/heads/master@{#32695} TBR=yangguo@chromium.org,bmeurer@chromium.org,verwaest@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review URL: https://codereview.chromium.org/1510173002 Cr-Commit-Position: refs/heads/master@{#32700}
-
verwaest authored
Make Error.prototype.toString spec compliant; and fix various side-effect-free error printing methods R=yangguo@chromium.org LOG=n Review URL: https://codereview.chromium.org/1507273002 Cr-Commit-Position: refs/heads/master@{#32695}
-
- 08 Dec, 2015 1 commit
-
-
littledan authored
The Promise::Chain logic is moved to a helper function to avoid a violation of deprecated function usage. R=rossberg,jochen BUG=v8:3237 LOG=Y Review URL: https://codereview.chromium.org/1477023002 Cr-Commit-Position: refs/heads/master@{#32670}
-
- 07 Dec, 2015 2 commits
-
-
littledan authored
Fix some minor issues that the linter is complaining about R=jochen Review URL: https://codereview.chromium.org/1507823002 Cr-Commit-Position: refs/heads/master@{#32667}
-
jkummerow authored
Also delete a bunch of dead code from src/js/. Review URL: https://codereview.chromium.org/1502593002 Cr-Commit-Position: refs/heads/master@{#32650}
-
- 03 Dec, 2015 1 commit
-
-
jochen authored
BUG=none R=neis@chromium.org LOG=y Review URL: https://codereview.chromium.org/1493053004 Cr-Commit-Position: refs/heads/master@{#32551}
-
- 02 Dec, 2015 2 commits
-
-
jkummerow authored
Split out of PropertyAttributes, and used for all filtering purposes. Also moved PropertyAttributes into the v8::internal:: namespace. No change in behavior intended. Review URL: https://codereview.chromium.org/1492653004 Cr-Commit-Position: refs/heads/master@{#32525}
-
jochen authored
BUG=v8:2487 LOG=n R=vogelheim@chromium.org Review URL: https://codereview.chromium.org/1496493002 Cr-Commit-Position: refs/heads/master@{#32509}
-
- 01 Dec, 2015 1 commit
-
-
neis authored
R=rossberg BUG=v8:1543 LOG=N Review URL: https://codereview.chromium.org/1481103002 Cr-Commit-Position: refs/heads/master@{#32457}
-
- 30 Nov, 2015 1 commit
-
-
jochen authored
R=vogelheim@chromium.org LOG=n BUG=v8:2487 Review URL: https://codereview.chromium.org/1474353002 Cr-Commit-Position: refs/heads/master@{#32389}
-
- 27 Nov, 2015 1 commit
-
-
verwaest authored
This replaces internal GetConstructorName with toStringTag, .constructor's name and class_name. This entirely changes how the name is computed for use in devtools. BUG=chromium:529177 LOG=n Review URL: https://codereview.chromium.org/1435273002 Cr-Commit-Position: refs/heads/master@{#32374}
-
- 26 Nov, 2015 3 commits
-
-
rossberg authored
Moves all files related to AST and scopes into ast/, and all files related to scanner & parser to parsing/. Also eliminates a couple of spurious dependencies. R=mstarzinger@chromium.org BUG= Review URL: https://codereview.chromium.org/1481613002 Cr-Commit-Position: refs/heads/master@{#32351}
-
jochen authored
This way, we can also capture a stack trace for SMIs BUG=chromium:495801 R=yangguo@chromium.org LOG=y Review URL: https://codereview.chromium.org/1472143006 Cr-Commit-Position: refs/heads/master@{#32331}
-
neis authored
LOG=N BUG=v8:1543 Review URL: https://codereview.chromium.org/1479543002 Cr-Commit-Position: refs/heads/master@{#32320}
-
- 25 Nov, 2015 1 commit
-
-
bmeurer authored
ES6 section 12.2.8.1 states that flags for regular expression literals must be checked during parsing and invalid flags are early errors. This change adapts the Scanner and (Pre)Parser to act according to the spec. This is also a prerequisite to unify the handling of literal creation (for Objects, Arrays, Regexps, and at some point Classes). R=yangguo@chromium.org Review URL: https://codereview.chromium.org/1472323002 Cr-Commit-Position: refs/heads/master@{#32273}
-
- 24 Nov, 2015 1 commit
-
-
epertoso authored
BUG= Review URL: https://codereview.chromium.org/1407313004 Cr-Commit-Position: refs/heads/master@{#32213}
-
- 23 Nov, 2015 1 commit
-
-
jochen authored
BUG=2487 R=ulan@chromium.org LOG=n Review URL: https://codereview.chromium.org/1457223005 Cr-Commit-Position: refs/heads/master@{#32164}
-
- 19 Nov, 2015 4 commits
-
-
kozyatinskiy authored
Following logic is using for getting function name in JSFunction::GetDebugName: 1. if function has displayName and its type is string then use it 2. if function has defined property Function.name as value and its type string then use it 3. otherwise use SharedFunctionInfo::DebugName as functionName. JSFunction::GetDebugName is exposed in V8 API and in FunctionMirror interface. BUG=chromium:17356 R=yangguo@chromium.org,mstarzinger@chromium.org LOG=Y Review URL: https://codereview.chromium.org/1449473005 Cr-Commit-Position: refs/heads/master@{#32124}
-
verwaest authored
BUG= Review URL: https://codereview.chromium.org/1448933002 Cr-Commit-Position: refs/heads/master@{#32120}
-
yangguo authored
R=ishell@chromium.org, verwaest@chromium.org Review URL: https://codereview.chromium.org/1457883003 Cr-Commit-Position: refs/heads/master@{#32106}
-
adamk authored
R=jochen@chromium.org CQ_INCLUDE_TRYBOTS=tryserver.chromium.linux:linux_chromium_rel_ng Review URL: https://codereview.chromium.org/1456923003 Cr-Commit-Position: refs/heads/master@{#32099}
-
- 16 Nov, 2015 1 commit
-
-
jochen authored
BUG=none R=verwaest@chromium.org,rossberg@chromium.org,bmeurer@chromium.org,neis@chromium.org LOG=y Review URL: https://codereview.chromium.org/1413463006 Cr-Commit-Position: refs/heads/master@{#32014}
-
- 10 Nov, 2015 1 commit
-
-
http://crrev.com/1367953002epertoso authored
This CL is in preparation for the API change introduced in http://crrev.com/1407313004. BUG= Review URL: https://codereview.chromium.org/1434693008 Cr-Commit-Position: refs/heads/master@{#31930}
-
- 05 Nov, 2015 2 commits
-
-
yangguo authored
R=littledan@chromium.org BUG=v8:3715, v8:4528 LOG=Y Committed: https://crrev.com/60e8877e161fe6175e19fafce2d6ed1c3999cdb1 Cr-Commit-Position: refs/heads/master@{#31753} Committed: https://crrev.com/b5c80a31ad266eb38a0cf2ff756be59c66d34aa5 Cr-Commit-Position: refs/heads/master@{#31773} Committed: https://crrev.com/85494e90bb63a3a9e19a1bf862cb6bfcb0162ee9 Cr-Commit-Position: refs/heads/master@{#31782} Committed: https://crrev.com/152163c1646b45f5fc5d31a4ec2eb55d7f4a2ffc Cr-Commit-Position: refs/heads/master@{#31804} Review URL: https://codereview.chromium.org/1419823010 Cr-Commit-Position: refs/heads/master@{#31824}
-
ishell authored
Review URL: https://codereview.chromium.org/1425013006 Cr-Commit-Position: refs/heads/master@{#31819}
-