- 06 Nov, 2017 1 commit
-
-
Toon Verwaest authored
Bug: v8:5561 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I47b7df39e80a66449a1ebe98e30052ced2ef2bd3 Reviewed-on: https://chromium-review.googlesource.com/753326Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#49151}
-
- 25 Oct, 2017 1 commit
-
-
Jakob Kummerow authored
and use a newly-introduced "enum class Operation" in all other places that so far passed Token::Values around. Also delete some related dead code along the way. Bug: v8:6921 Change-Id: I062f396d304aa62298cfeff202e3132a4a5597c1 Reviewed-on: https://chromium-review.googlesource.com/736851 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#48944}
-
- 18 Oct, 2017 2 commits
-
-
Clemens Hammacher authored
This CL fixes all occurences that don't require special OWNER reviews, or can be reviewed by Michi. After this one, we should be able to reenable the readability/check cpplint check. R=mstarzinger@chromium.org Bug: v8:6837, v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: Ic81d68d5534eaa795b7197fed5c41ed158361d62 Reviewed-on: https://chromium-review.googlesource.com/721120 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48670}
-
peterwmwong authored
Bug: v8:5049 Change-Id: Ia4f5729be64794e9080eb0e644b86cd5d8c88a11 Reviewed-on: https://chromium-review.googlesource.com/722168Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#48661}
-
- 13 Oct, 2017 1 commit
-
-
Mathias Bynens authored
New code should use nullptr instead of NULL. This patch updates existing use of NULL to nullptr where applicable, making the code base more consistent. BUG=v8:6928,v8:6921 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng;master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I4687f5b96fcfd88b41fa970a2b937b4f6538777c Reviewed-on: https://chromium-review.googlesource.com/718338 Commit-Queue: Mathias Bynens <mathias@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#48557}
-
- 25 Sep, 2017 1 commit
-
-
Benedikt Meurer authored
When inlining based on SharedFunctionInfo rather than based on concrete JSFunction, we weren't able to properly optimize array, object and regexp literals inside the inlinee, because we didn't know the concrete FeedbackVector for the inlinee inside JSCreateLowering. This was because JSCreateLowering wasn't properly updated after the literals moved to the FeedbackVector. Now with this CL we also have the VectorSlotPair on the literal creation operators, just like we do for property accesses and calls, and are thus able to always access the appropriate FeedbackVector and optimize the literal creation. The impact is illustrated by the micro-benchmark on the tracking bug, which goes from createEmptyArrayLiteral: 1846 ms. createShallowArrayLiteral: 1868 ms. createShallowObjectLiteral: 2246 ms. to createEmptyArrayLiteral: 1175 ms. createShallowArrayLiteral: 1187 ms. createShallowObjectLiteral: 1195 ms. with this CL, so up to 2x faster now. Drive-by-fix: Also remove the unused CreateEmptyObjectLiteral builtin and cleanup the names of the other builtins to be consistent with the names of the TurboFan operators and Ignition bytecodes. Bug: v8:6856 Change-Id: I453828d019b27c9aa1344edac0dd84e91a457097 Reviewed-on: https://chromium-review.googlesource.com/680656 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#48140}
-
- 22 Sep, 2017 1 commit
-
-
Albert Mingkun Yang authored
TurboAssembler::CallRecordWriteStub contains info that could be used to conditionally skip generational write barrier or skip saving float-point registers. This commits uses those info in RecordWrite stub. Bug: chromium:749486 Change-Id: I41c9a593473e1f8863a09887fd2ce917f1d4fb3b Reviewed-on: https://chromium-review.googlesource.com/672527Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#48123}
-
- 12 Sep, 2017 1 commit
-
-
pan.deng@intel.com authored
Contributed by kanghua.yu@intel.com. Bug: None Change-Id: I5651ef38eb0c08deb97770a5eaa985dba2dab9a9 Reviewed-on: https://chromium-review.googlesource.com/604648Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Pan Deng <pan.deng@intel.com> Cr-Commit-Position: refs/heads/master@{#47968}
-
- 05 Sep, 2017 1 commit
-
-
Ross McIlroy authored
Always return to the InterpreterEntryTrampoline rather than calling the InterpreterExitTrampoline from the Return bytecode handler. This fixes a regression which occured if we upset the call/return stack by skipping the return to the InterpreterEntryTrampoline from the return bytecode handler. BUG=chromium:759390,chromium:753705 Change-Id: Ib625654a4a5072ac6c8d8e9611d1b9c0bbced4ca Reviewed-on: https://chromium-review.googlesource.com/649517 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47826}
-
- 01 Sep, 2017 1 commit
-
-
Michael Starzinger authored
This adds support for lowering {JSCreateArguments} within outermost frames of type {CreateArgumentsType::kMappedArguments}. It will hence enable escape analysis to work with such objects and allow for further optimization. This also adds a new {NewMappedArgumentsElements} simplfied operator. Note that escape analysis support for this new operator will be done as a follow-up. R=tebbi@chromium.org Change-Id: I0e2fac25c654f796433f57b116964053b6b68635 Reviewed-on: https://chromium-review.googlesource.com/641454 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#47761}
-
- 25 Aug, 2017 1 commit
-
-
Ross McIlroy authored
This change adapts the Call bytecode handlers such that they don't require a stack frame. It does this by modifying the call bytecode handler to tail-call the Call or InterpreterPushArgsAndCall builtins. As a result, the callee function will return to the InterpreterEntryTrampoline when it returns (since this is the return address on the interpreter frame), which is adapted to dispatch to the next bytecode handler. The return bytecode handler is modified to tail-call a new InterpreterExitTramoline instead of returning to the InterpreterEntryTrampoline. Overall this significanlty reduces the amount of stack space required for interpreter frames, increasing the maximum depth of recursive calls from around 6000 to around 12,500 on x64. BUG=chromium:753705 Change-Id: I23328e4cef878df3aca4db763b47d72a2cce664c Reviewed-on: https://chromium-review.googlesource.com/634364 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#47617}
-
- 24 Aug, 2017 1 commit
-
-
Albert Mingkun Yang authored
This is useful for the RecordWrite stub that can now specify the set of allocatable registers in its call descriptor interface. During register allocation a custom register configuration is used to ensure that the register are allocated from the given set. This makes calling RecordWrite stub less expensive as we need to save/restore only the allocatable registers instead all registers. Bug: chromium:749486 Change-Id: If4d73f1fd525e480970ea92600fb811e63677eb5 Reviewed-on: https://chromium-review.googlesource.com/624734Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#47577}
-
- 15 Aug, 2017 1 commit
-
-
Martyn Capewell authored
No longer needed. Bug: v8:6409 Change-Id: Iea0afcb7ced24d10223db5e01f66813e97fc4134 Reviewed-on: https://chromium-review.googlesource.com/613761 Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#47357}
-
- 07 Aug, 2017 3 commits
-
-
Benedikt Meurer authored
Drop the deprecated CallConstructStub and remove the use of CallICStub from fullcodegen, since that feedback is unused completely every since Crankshaft got removed, thus we can safely unlink all the CallIC stuff from fullcodegen nowadays, and completely nuke the CallICStub and the CallICTrampolineStub now (we can also transitively nuke the unused CreateAllocationSiteStub and CreateWeakCellStub). Instead the CallIC logic is integrated into Ignition now, and part of the bytecode handlers for [[Call]] and [[Construct]]. There's still some follow-up cleanup with the way the Array constructor feedback is integrated, but that's way easier now. Bug: v8:5517, v8:6399, v8:6409, v8:6679 Change-Id: I0a6c6046faceca9b1606577bc9e63d9295e44619 Reviewed-on: https://chromium-review.googlesource.com/603609 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#47196}
-
Michael Achenbach authored
This reverts commit 6c541561. Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap/builds/17240 Original change's description: > [ic] Properly integrate the CallIC into Ignition. > > Drop the deprecated CallConstructStub and remove the use of CallICStub > from fullcodegen, since that feedback is unused completely every since > Crankshaft got removed, thus we can safely unlink all the CallIC stuff > from fullcodegen nowadays, and completely nuke the CallICStub and the > CallICTrampolineStub now (we can also transitively nuke the unused > CreateAllocationSiteStub and CreateWeakCellStub). > > Instead the CallIC logic is integrated into Ignition now, and part of > the bytecode handlers for [[Call]] and [[Construct]]. There's still some > follow-up cleanup with the way the Array constructor feedback is > integrated, but that's way easier now. > > Bug: v8:5517, v8:6399, v8:6409, v8:6679 > Change-Id: Ia0efc6145ee64633757a6c3fd1879d4906ea2835 > Reviewed-on: https://chromium-review.googlesource.com/602134 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#47192} TBR=rmcilroy@chromium.org,yangguo@chromium.org,bmeurer@chromium.org Change-Id: I416ce6646f62ceb4127b3acee43912ee0d701c23 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:5517, v8:6399, v8:6409, v8:6679 Reviewed-on: https://chromium-review.googlesource.com/603647Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#47193}
-
Benedikt Meurer authored
Drop the deprecated CallConstructStub and remove the use of CallICStub from fullcodegen, since that feedback is unused completely every since Crankshaft got removed, thus we can safely unlink all the CallIC stuff from fullcodegen nowadays, and completely nuke the CallICStub and the CallICTrampolineStub now (we can also transitively nuke the unused CreateAllocationSiteStub and CreateWeakCellStub). Instead the CallIC logic is integrated into Ignition now, and part of the bytecode handlers for [[Call]] and [[Construct]]. There's still some follow-up cleanup with the way the Array constructor feedback is integrated, but that's way easier now. Bug: v8:5517, v8:6399, v8:6409, v8:6679 Change-Id: Ia0efc6145ee64633757a6c3fd1879d4906ea2835 Reviewed-on: https://chromium-review.googlesource.com/602134 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#47192}
-
- 03 Aug, 2017 1 commit
-
-
Albert Mingkun Yang authored
Bug: 749486 The feature is off by default, and could be turned on via `v8_enable_csa_write_barrier = true`. With this CL, only x64 uses this feature Change-Id: Ie024f08b7d796a4cc4d55285dc9fe796780f0e53 Reviewed-on: https://chromium-review.googlesource.com/588891Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Albert Mingkun Yang <albertnetymk@google.com> Cr-Commit-Position: refs/heads/master@{#47122}
-
- 19 Jul, 2017 1 commit
-
-
Ross McIlroy authored
There remained a few of regressions and we didn't see any significant improvement in the real world with this turned on. This CL reverts all the StringConcat bytecode work which landed. BUG=v8:6243 Change-Id: I832eb72e880ad41411dbec8fe29f71ef0f2025c8 Reviewed-on: https://chromium-review.googlesource.com/575130 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#46769}
-
- 18 Jul, 2017 1 commit
-
-
Jakob Kummerow authored
Bug: v8:6550 Change-Id: I888f91db1fd842d1fef8a5fb749da229dfb6ab97 Reviewed-on: https://chromium-review.googlesource.com/575756Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Daniel Clifford <danno@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#46746}
-
- 22 Jun, 2017 1 commit
-
-
danno authored
This CL leverages and extends the deopt-to-stub mechanisms previously introduced to support deopting from CSA-built builtins (e.g. Array.prototype.forEach). BUG=v8:6373 LOG=N Review-Url: https://codereview.chromium.org/2890363002 Cr-Commit-Position: refs/heads/master@{#46144}
-
- 20 Jun, 2017 1 commit
-
-
Peter Marshall authored
We can remove a lot of native code and rely on CallOrConstructVarargs to do the stack manipulation for us. This will also take advantage of the fast-path for double arrays in CallOrConstructDoubleVarargs. We can also remove Runtime_SpreadIterableFixed because it isn't used anymore. We just call directly into spread_iterable from CSA. Bug: v8:6488, chromium:704966 Change-Id: I81a18281f062619851134fff7ce88471566ee3b5 Reviewed-on: https://chromium-review.googlesource.com/535615Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#46038}
-
- 16 Jun, 2017 1 commit
-
-
Mythri authored
Profiler ticks are reset when the type feedback changes for Load / Store ICs. This cl extends this to other operations as well. This allows us to tier up functions when the feedback vectors are stable. This is the first step for a set of follow up cls that will change the heuristics used in runtime-profiler. Bug: Change-Id: I875209712c6161e425a03475c14890a49155c0e1 Reviewed-on: https://chromium-review.googlesource.com/529165Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#45974}
-
- 08 Jun, 2017 1 commit
-
-
bmeurer authored
This splits the monolithic Apply builtin into several smaller builtins, namely CallVargargs and ConstructVarargs, which accept a length and a FixedArray of elements and deal with the actual stack manipulation, and CallWithArrayLike / ConstructWithArrayLike that deal with getting the elements from the receiver (for Function.prototype.apply, Reflect.apply and Reflect.construct), which can now be written using the CSA. The idea is that these builtins can be reused by TurboFan directly in the future when we optimize apply better, and that we can also reuse the core logic in the handling of spread calls/constructs. R=petermarshall@chromium.org BUG=v8:4587,v8:5269 Review-Url: https://codereview.chromium.org/2930623002 Cr-Commit-Position: refs/heads/master@{#45794}
-
- 07 Jun, 2017 1 commit
-
-
Ross McIlroy authored
Adds support for lowering of ToPrimitiveToString and StringConcat bytecodes to the corresponding builtins. As part of this, moves the interpreter implementation of these operations into the appropriate builtin generators and add builtin support for them. Also adds TailCallRuntimeN operator to code-assembler which enables tail calling a runtime function when the arguments have already been pushed onto the stack. BUG=v8:6243 Change-Id: Id5c851bc42e4ff490d9a23a8990ae331c7eac73e Reviewed-on: https://chromium-review.googlesource.com/515362 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#45756}
-
- 30 May, 2017 1 commit
-
-
Ali Ijaz Sheikh authored
Bug: Change-Id: If8c9db5ad4114f9ce3ca925d85a776fdb7da8fed Reviewed-on: https://chromium-review.googlesource.com/513525Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Cr-Commit-Position: refs/heads/master@{#45610}
-
- 18 May, 2017 2 commits
-
-
Camillo Bruni authored
Change-Id: I4b19700b613f81601321a336cc758cfd7f826f3e Reviewed-on: https://chromium-review.googlesource.com/504347Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#45390}
-
bmeurer authored
We already had an optimization to turn Function.prototype.apply with arguments object, i.e. function foo() { return bar.apply(this, arguments); } into a special operator JSCallForwardVarargs, which avoids the allocation and deconstruction of the arguments object, but just passes along the incoming parameters. We can do the same for rest parameters and spread calls/constructs, i.e. class A extends B { constructor(...args) { super(...args); } } or function foo(...args) { return bar(1, 2, 3, ...args); } where we basically pass along the parameters (plus maybe additional statically known parameters). For this, we introduce a new JSConstructForwardVarargs operator and generalize the CallForwardVarargs builtins that are backing this. BUG=v8:6407,v8:6278,v8:6344 R=jarin@chromium.org Review-Url: https://codereview.chromium.org/2890023004 Cr-Commit-Position: refs/heads/master@{#45388}
-
- 03 May, 2017 1 commit
-
-
jkummerow authored
by pulling parameterizable things out of the case-blocks. No change in functionality. BUG=chromium:714894 Review-Url: https://codereview.chromium.org/2854273004 Cr-Commit-Position: refs/heads/master@{#45066}
-
- 29 Apr, 2017 5 commits
-
-
danno authored
This CL changes certain frequently-called Array builtins to use CodeStubArguments rather than peek at the stack frames above array builtins to determine if options arguments have been passed into them. Previous failure likely due to unfortunate/unluckily timed GC that moved due to changed timing/allocation from this CL. Test mitigation for allocation-site-info.js included. BUG=v8:1956 LOG=N Review-Url: https://codereview.chromium.org/2829093004 Cr-Commit-Position: refs/heads/master@{#44998}
-
danno authored
Revert of [turbofan] Avoid going through ArgumentsAdaptorTrampoline for CSA/C++ builtins (patchset #8 id:140001 of https://codereview.chromium.org/2829093004/ ) Reason for revert: Still fails. Likely has to do with gc heap size for allocation site tests, mitigation pending... Original issue's description: > [turbofan] Reland: Avoid going through ArgumentsAdaptorTrampoline for select CSA array builtins > > This CL changes certain frequently-called Array builtins to use CodeStubArguments > rather than peek at the stack frames above array builtins to determine if options > arguments have been passed into them. > > Previous failure cannot be reproed with failing config. Flake? > > BUG=v8:1956 > LOG=N > > Review-Url: https://codereview.chromium.org/2829093004 > Cr-Commit-Position: refs/heads/master@{#44996} > Committed: https://chromium.googlesource.com/v8/v8/+/7ca381e84792b83581d0199dfae2888781785273 TBR=mvstanton@chromium.org,ishell@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:1956 Review-Url: https://codereview.chromium.org/2851063002 Cr-Commit-Position: refs/heads/master@{#44997}
-
danno authored
This CL changes certain frequently-called Array builtins to use CodeStubArguments rather than peek at the stack frames above array builtins to determine if options arguments have been passed into them. Previous failure cannot be reproed with failing config. Flake? BUG=v8:1956 LOG=N Review-Url: https://codereview.chromium.org/2829093004 Cr-Commit-Position: refs/heads/master@{#44996}
-
danno authored
Revert of [turbofan] Avoid going through ArgumentsAdaptorTrampoline for CSA/C++ builtins (patchset #8 id:140001 of https://codereview.chromium.org/2829093004/ ) Reason for revert: Nosnap failure Original issue's description: > [turbofan] Avoid going through ArgumentsAdaptorTrampoline for select CSA/C++ builtins > > This CL changes certain frequently-called Array builtins to use CodeStubArguments > rather than peek at the stack frames above array builtins to determine if options > arguments have been passed into them. > > BUG=v8:1956 > LOG=N > > Review-Url: https://codereview.chromium.org/2829093004 > Cr-Commit-Position: refs/heads/master@{#44994} > Committed: https://chromium.googlesource.com/v8/v8/+/680356278ddc7577e3b967fcc92055522ce00856 TBR=mvstanton@chromium.org,ishell@chromium.org,bmeurer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:1956 Review-Url: https://codereview.chromium.org/2851703005 Cr-Commit-Position: refs/heads/master@{#44995}
-
danno authored
This CL changes certain frequently-called Array builtins to use CodeStubArguments rather than peek at the stack frames above array builtins to determine if options arguments have been passed into them. BUG=v8:1956 LOG=N Review-Url: https://codereview.chromium.org/2829093004 Cr-Commit-Position: refs/heads/master@{#44994}
-
- 21 Apr, 2017 5 commits
-
-
jgruber authored
If we avoid throwing a stack overflow exception from Irregexp code during direct calls, there is no need to construct exit frames before the Irregexp call anymore. As that was the last remaining blocker, we can now implement the entire stub in CSA. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2752143003 Cr-Original-Original-Commit-Position: refs/heads/master@{#44770} Committed: https://chromium.googlesource.com/v8/v8/+/74f2497eae068f85da26904d8c451376c77957bf Review-Url: https://codereview.chromium.org/2752143003 Cr-Original-Commit-Position: refs/heads/master@{#44775} Committed: https://chromium.googlesource.com/v8/v8/+/9c0832eb1aceba625a2443a31d51bcaf550c575a Review-Url: https://codereview.chromium.org/2752143003 Cr-Commit-Position: refs/heads/master@{#44779}
-
jgruber authored
Revert of [regexp] Remove remainder of native RegExpExecStub (patchset #10 id:180001 of https://codereview.chromium.org/2752143003/ ) Reason for revert: More failures on ports: https://build.chromium.org/p/client.v8.ports/builders/V8%20Android%20Arm64%20-%20builder/builds/9123/steps/compile/logs/stdio https://build.chromium.org/p/client.v8.ports/builders/V8%20Mips%20-%20builder/builds/8966/steps/compile/logs/stdio Original issue's description: > [regexp] Remove remainder of native RegExpExecStub > > If we avoid throwing a stack overflow exception from Irregexp code during > direct calls, there is no need to construct exit frames before the Irregexp > call anymore. As that was the last remaining blocker, we can now implement the > entire stub in CSA. > > BUG=v8:5339 > > Review-Url: https://codereview.chromium.org/2752143003 > Cr-Original-Commit-Position: refs/heads/master@{#44770} > Committed: https://chromium.googlesource.com/v8/v8/+/74f2497eae068f85da26904d8c451376c77957bf > Review-Url: https://codereview.chromium.org/2752143003 > Cr-Commit-Position: refs/heads/master@{#44775} > Committed: https://chromium.googlesource.com/v8/v8/+/9c0832eb1aceba625a2443a31d51bcaf550c575a TBR=ishell@chromium.org,mstarzinger@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5339 Review-Url: https://codereview.chromium.org/2832193002 Cr-Commit-Position: refs/heads/master@{#44776}
-
jgruber authored
If we avoid throwing a stack overflow exception from Irregexp code during direct calls, there is no need to construct exit frames before the Irregexp call anymore. As that was the last remaining blocker, we can now implement the entire stub in CSA. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2752143003 Cr-Original-Commit-Position: refs/heads/master@{#44770} Committed: https://chromium.googlesource.com/v8/v8/+/74f2497eae068f85da26904d8c451376c77957bf Review-Url: https://codereview.chromium.org/2752143003 Cr-Commit-Position: refs/heads/master@{#44775}
-
machenbach authored
Revert of [regexp] Remove remainder of native RegExpExecStub (patchset #8 id:140001 of https://codereview.chromium.org/2752143003/ ) Reason for revert: https://build.chromium.org/p/client.v8.ports/builders/V8%20Android%20Arm64%20-%20builder/builds/9118 Original issue's description: > [regexp] Remove remainder of native RegExpExecStub > > If we avoid throwing a stack overflow exception from Irregexp code during > direct calls, there is no need to construct exit frames before the Irregexp > call anymore. As that was the last remaining blocker, we can now implement the > entire stub in CSA. > > BUG=v8:5339 > > Review-Url: https://codereview.chromium.org/2752143003 > Cr-Commit-Position: refs/heads/master@{#44770} > Committed: https://chromium.googlesource.com/v8/v8/+/74f2497eae068f85da26904d8c451376c77957bf TBR=ishell@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5339 Review-Url: https://codereview.chromium.org/2833083002 Cr-Commit-Position: refs/heads/master@{#44771}
-
jgruber authored
If we avoid throwing a stack overflow exception from Irregexp code during direct calls, there is no need to construct exit frames before the Irregexp call anymore. As that was the last remaining blocker, we can now implement the entire stub in CSA. BUG=v8:5339 Review-Url: https://codereview.chromium.org/2752143003 Cr-Commit-Position: refs/heads/master@{#44770}
-
- 11 Apr, 2017 2 commits
-
-
Leszek Swirski authored
Adds a collection of call bytecodes which have an implicit undefined receiver argument, for cases such as global calls where we know that the receiver has to be undefined. This way we can skip an LdaUndefined, decrease bytecode register pressure, and set a more accurate ConvertReceiverMode on the interpreter and TurboFan call. As a side effect, the "normal" Call bytecode now becomes a rare case (only with calls and super property calls), so we get rid of its 0-2 argument special cases and modify CallProperty[N] to use the NotNullOrUndefined ConvertReceiverMode. Reland of https://chromium-review.googlesource.com/c/463287 after fixing tests in https://codereview.chromium.org/2813873002. Change-Id: I314d69c7643ceec6a5750ffdab60dad38dad09e5 Reviewed-on: https://chromium-review.googlesource.com/474752Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#44582}
-
Michael Achenbach authored
This reverts commit 751e8935. Reason for revert: Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/14885 See: https://github.com/v8/v8/wiki/Blink-layout-tests Original change's description: > [ignition] Add call bytecodes for undefined receiver > > Adds a collection of call bytecodes which have an implicit undefined > receiver argument, for cases such as global calls where we know that the > receiver has to be undefined. This way we can skip an LdaUndefined, > decrease bytecode register pressure, and set a more accurate > ConvertReceiverMode on the interpreter and TurboFan call. > > As a side effect, the "normal" Call bytecode now becomes a rare case > (only with calls and super property calls), so we get rid of its 0-2 > argument special cases and modify CallProperty[N] to use the > NotNullOrUndefined ConvertReceiverMode. > > Change-Id: I9374a32fefd66fc0251b5193bae7a6b7dc31eefc > Reviewed-on: https://chromium-review.googlesource.com/463287 > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#44530} TBR=rmcilroy@chromium.org,mstarzinger@chromium.org,leszeks@chromium.org,v8-reviews@googlegroups.com,v8-mips-ports@googlegroups.com,v8-ppc-ports@googlegroups.com,v8-x87-ports@googlegroups.com,bmeurer@chromium.org NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Change-Id: I7629dec609d0ec938ce7105d6c1c74884e5f9272 Reviewed-on: https://chromium-review.googlesource.com/474744 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#44548}
-