- 02 Mar, 2022 1 commit
-
-
Jakob Gruber authored
.. by moving them all to TieringManager. Bug: v8:7700 Change-Id: I03eb2d1607b06ece84a1ca98ebc723788dbc0cde Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3500220 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79325}
-
- 15 Feb, 2022 1 commit
-
-
Jakob Gruber authored
1. feedback_vector_allocation -> feedback_allocation like elsewhere. 2. A consistent --interrupt-budget prefix. 3. Remove the on-by-default --feedback-allocation-on-bytecode-size. Bug: v8:7700 Change-Id: I1d0af11e89398973a65bf9cb7c7722740d9452ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3463718 Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79097}
-
- 09 Sep, 2021 1 commit
-
-
Georg Neis authored
It could happen that the information about the feedback vector cached in a JSFunctionData disagreed with the current value of the function's feedback cell. The inlining code wasn't prepared for that and a CHECK could fail. The CL fixes this by removing the caching of has_feedback_vector and feedback_vector and by getting hold of the bytecode array before fetching the feedback vector in inlining. Bug: v8:12172, v8:7790 Change-Id: Ife3ab8872085d9496e6d1f34514114a086f653ad Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3148010 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/main@{#76751}
-
- 14 Jun, 2021 1 commit
-
-
Dan Elphick authored
This moves all of the FunctionTemplateInfo code into templates.cc and removes the inline keyword from BreakAtEntry which is moved out of templates-inl.h. As a result templates-inl.h no longer depends on shared-function-info-inl.h. This in turn uncovered lots of other missing includes which are now in place. Change-Id: I9bc152d5e3db0e793db135a8cfcf97f6d8bcbb8a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2953295Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#75120}
-
- 22 Feb, 2021 1 commit
-
-
Mythri A authored
Earlier we used the same interrupt budget always and waited for higher number of ticks when tiering up from Turboprop to TurboFan. On some of the real world pages this adds a reasonable overhead for processing these interrupts. This cl sets the interrupt budget to a higher value so there are fewer interrupts. This cl: 1. Sets the interrupt budget on feedback cell to FLAG_interrupt_budget * scale factor when we install optimized code. 2. Resets the budget to FLAG_interrupt_budget when there is a deoptimization. 3. Updates the runtime profiler to remove the scaling of number of ticks needed for optimization when tiering up from TP to TF. On sheets benchmark, we spend 40-50ms when servicing interrupts from Turboprop code. This change brings it down to ~7ms. We also see improvements on other pages. Bug: v8:9684 Change-Id: Ia3e5e998d1fff44f2e08a240a8769b7ebe794da2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2696661 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#72906}
-
- 22 Jan, 2021 1 commit
-
-
Mike Stanton authored
The compiler is only interested in the contents if it contains a FeedbackVector. If one is discovered, it is serialized, and we ensure we'll either return it or nothing if the contents of the cell changed on the main thread. FeedbackCells can be reset if the bytecode for the associated function is flushed. We have guarantees only for functions we choose to inline that this doesn't happen (by holding a strong handle to the SharedFunctionInfo). Bug: v8:7790 Change-Id: I9ecff3f4aef39169d84501feae9e47f2d118054e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2434324 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Cr-Commit-Position: refs/heads/master@{#72260}
-
- 10 Nov, 2020 1 commit
-
-
Jakob Gruber authored
Construction of JSFunction objects is complex, mostly due to the existence of multiple functions kinds (JS, wasm, builtin, test, ...) that are all created slightly differently. For example, JS functions may come with an existing FeedbackCell (and FeedbackVector), while builtins and wasm functions always use the many_closures_cell (without a vector). Prior to this CL, construction logic was scattered over a family of 7 functions, without a clearly defined chokepoint for header initialization. This was hard to understand, hard to modify, and needlessly inefficient (by setting some fields twice). This CL fixes all that by introducing JSFunctionBuilder. The BuildRaw method is the chokepoint for allocation and initialization, and Build performs common pre- and post-work. Future work: - Remove now-deprecated functions. - Untangle SFI/Map/JSFunction construction and remove Factory::NewFunction and NewFunctionArgs. Bug: v8:8888 Change-Id: I709a2a44ee02e10593a4c9afe43d4d2c6d6351c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2527098Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#71084}
-
- 28 Oct, 2020 1 commit
-
-
Tobias Tebbi authored
This CL splits the class definitions per .tq file, to realize the following relationship: A class defined in src/objects/foo.tq has a C++ definition in src/objects/foo.h. Torque then generates: - torque-generated/src/objects/foo-tq.inc An include file (no proper header) to be included in src/objects/foo.h containing the Torque-generated C++ class definition. - torque-generated/src/objects/foo-tq-inl.inc An include file (no proper header) to be included in src/objects/foo-inl.h containing inline function definitions. - torque-generated/src/objects/foo-tq.cc A source file including src/objects/foo-inl.h that contains non-inline function definitions. Advantages of this approach: - Avoid big monolithic headers and preserve the work that went into splitting objects.h - Moving a definition to Torque keeps everything in the same place from a C++ viewpoint, including a fully Torque-generated C++ class definition. - The Torque-generated include files do not need to be independent headers, necessary includes or forward declarations can just be added to the headers that include them. Drive-by changes: A bunch of definitions and files had to be moved or created to realize a consistent 1:1 relationship between .tq files and C++ headers. Bug: v8:7793 TBR: hpayer@chromium.org Change-Id: I239a89a16d0bc856a8669d7c92aeafe24a7c7663 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2470571 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#70853}
-
- 25 Feb, 2020 1 commit
-
-
Mythri A authored
We use the same interrupt to both allocate feedback vectors and for updating the profiler ticks. If there is a feedback vector already available, we just increment the profiler ticks that we use to mark for optimizing function. Calling JSFunction::EnsureFeedbackVector allocates a feedback vector, but doesn't reset the budget, so we optimize much earlier than expected. This is currently only a problem with %PrepareFunctionForOptimize that doesn't reset the budget. Other code paths do also reset the interrupt budget. Bug: chromium:10243 Change-Id: I611a9202e5e71077bf897def5959bcfe11b8fdf4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2064980 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#66426}
-
- 20 Jan, 2020 1 commit
-
-
Mythri A authored
When bytecode is flushed we also want to flush the feedback vectors to save memory. There was a bug in this code and we flushed ClosureFeedbackCellArray too. Flushing ClosureFeedbackCellArrays causes the closures created by this function before and after the bytecode flush to have different feedback cells and hence different feedback vectors. This cl fixes it so we only flush feedback vectors on a bytecode flush. Also this cl pretenures ClosureFeedbackCellArrays. Only FeedbackCells and FeedbackVectors can contain ClosureFeedbackCellArrays which are pretenured, so it is better to pretenure ClosureFeedbackCellArrays as well. Bug: chromium:1031479 Change-Id: I7831441a95420b9e5711f4143461f1eb7fa1616a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1980582 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#65866}
-
- 07 Oct, 2019 1 commit
-
-
Seth Brenith authored
Just mechanical conversion to remove boilerplate code. When .tq and .h files didn't agree on what a field is named, I used the name from the .h file. In a couple of cases the generated accessor became slightly more specific (HeapObject instead of Object), and I had to update the code that uses those accessors accordingly. Change-Id: Ie3af1590e3889887b167c9d045b07860b01f7d15 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1776479Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#64142}
-
- 23 May, 2019 1 commit
-
-
Yang Guo authored
TBR=bmeurer@chromium.org,leszeks@chromium.org Bug: v8:9247 Change-Id: I8d14d0192ea8c705f8274e8e61a162531826edb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624220Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#61769}
-
- 08 May, 2019 1 commit
-
-
Mythri A authored
Bug: v8:8394, v8:8395 Change-Id: I1cbb87b67bef4d469abde99070b7870e2b8d0c90 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1601149 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61340}
-
- 25 Apr, 2019 1 commit
-
-
Irina Yatsenko authored
AllocationMemento, CoverageInfo, DebugInfo, DescriptorArray, FeedbackCell, FeedbackVector Bug: v8:8952 Change-Id: I17297706a8d9bd4a0ee01b0b133ca613dbc31cf9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1521910 Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61026}
-
- 10 Apr, 2019 3 commits
-
-
Mythri A authored
This is a reland of Ie3ac389e1c082d1671efd4d74abc076ce943301b with a fix for MSAN failures. Interrupt budget was store in bytecode array and used to be shared across all contexts. With lazy feedback allocation, using context independent interrupt budget might lead to performance cliffs when we have closures that do not share the same feedback (for ex: across contexts). This would be a problem even earlier but it could be more pronounced with feedback vector allocation, since the budgets for optimization is much higher (144x) than the budget for feedback allocation. Bug: chromium:948835, v8:8394 Change-Id: I74f998c30e27caf3bd34510f4d7f57b65e6c7f0d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1561072Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#60750}
-
Michael Achenbach authored
This reverts commit f3994485. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/26128 Original change's description: > [interpreter] Move interrupt budget from BytecodeArray to FeedbackCell > > Interrupt budget was store in bytecode array and used to be shared > across all contexts. With lazy feedback allocation, using context > independent interrupt budget might lead to performance cliffs when > we have closures that do not share the same feedback (for ex: across > contexts). This would be a problem even earlier but it could be > more pronounced with feedback vector allocation, since the budgets > for optimization is much higher (144x) than the budget for feedback > allocation. > > Bug: chromium:948835, v8:8394 > Change-Id: Ie3ac389e1c082d1671efd4d74abc076ce943301b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1558088 > Commit-Queue: Mythri Alle <mythria@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60734} TBR=jarin@chromium.org,mlippautz@chromium.org,mythria@chromium.org,jgruber@chromium.org,bmeurer@chromium.org Change-Id: Icbec4d28d6ac258827e222461cff51f2a2f42472 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:948835, v8:8394 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1560990Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#60735}
-
Mythri A authored
Interrupt budget was store in bytecode array and used to be shared across all contexts. With lazy feedback allocation, using context independent interrupt budget might lead to performance cliffs when we have closures that do not share the same feedback (for ex: across contexts). This would be a problem even earlier but it could be more pronounced with feedback vector allocation, since the budgets for optimization is much higher (144x) than the budget for feedback allocation. Bug: chromium:948835, v8:8394 Change-Id: Ie3ac389e1c082d1671efd4d74abc076ce943301b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1558088 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#60734}
-
- 15 Feb, 2019 1 commit
-
-
Jakob Kummerow authored
This takes heap-inl.h out of the "Giant Include Cluster". Naturally, that means adding a bunch of explicit includes in a bunch of places that relied on transitively including them before. As of this patch, no header file outside src/heap/ includes heap-inl.h. Bug: v8:8562,v8:8499 Change-Id: I65fa763f90e66afc30d105b9277792721f05a6d4 Reviewed-on: https://chromium-review.googlesource.com/c/1459659 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#59617}
-
- 09 Jan, 2019 1 commit
-
-
Jakob Kummerow authored
The incremental migration required several pairs of functionally equivalent macros. This patch consolidates everything onto the respective new version and drops the obsolete versions. Bug: v8:3770 Change-Id: I4fb05ff223e8250c83a13f46840810b0893f410b Reviewed-on: https://chromium-review.googlesource.com/c/1398223Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58659}
-
- 20 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Merging the temporary HeapObjectPtr back into HeapObject. Bug: v8:3770 Change-Id: I5bcd23ca2f5ba862cf5b52955dca143e531c637b Reviewed-on: https://chromium-review.googlesource.com/c/1386492 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#58410}
-
- 18 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
Dropping the temporary StructPtr in the process. Bug: v8:3770 Change-Id: I70784ede7b66b432d8438536ff0c70a51dfb7f83 Reviewed-on: https://chromium-review.googlesource.com/c/1377461 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Ben Smith <binji@chromium.org> Cr-Commit-Position: refs/heads/master@{#58315}
-
- 17 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
FeedbackCell, FunctionTemplateRareData, TemplateInfo, FunctionTemplateInfo, ObjectTemplateInfo Bug: v8:3770 Change-Id: Ic30ff2563fe30088b7740d5e98ade03cdae7fdd8 Reviewed-on: https://chromium-review.googlesource.com/c/1377459 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#58274}
-
- 14 Dec, 2018 1 commit
-
-
Jakob Kummerow authored
along with subclasses: Tuple2, Tuple3, FeedbackCell, AccessorPair. The latter two can be separated out later if desired. Bug: v8:5402 Change-Id: I4e1a6d2621cc6f96b5da208cff0da7cd5de91672 Reviewed-on: https://chromium-review.googlesource.com/c/1371038Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#58251}
-
- 05 Nov, 2018 1 commit
-
-
Jakob Kummerow authored
and split Smi out of objects.h into smi.h. Bug: v8:3770, v8:5402 Change-Id: I5ff7461495d29c785a76c79aca2616816a29ab1e Reviewed-on: https://chromium-review.googlesource.com/c/1313035Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57252}
-
- 14 Sep, 2018 3 commits
-
-
tzik authored
This is a reland of 836773c0 Original change's description: > Implement v8::internal::MicrotaskQueue::EnqueueMicrotask > > This adds `queue` and `pending_microtask_count` as members of > v8::internal::MicrotaskQueue, and implements its EnqueueMicrotask. > The implementation itself is similar to Isolate::EnqueueMicrotask. > > Bug: v8:8124 > Change-Id: Idb5c50b2add96b72cbe9e36aeec7cb568072f0cb > Reviewed-on: https://chromium-review.googlesource.com/1205430 > Commit-Queue: Taiju Tsuiki <tzik@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55884} Bug: v8:8124 Change-Id: Ibd32aec28c8fd9eab88904e62ba97a715295765d Reviewed-on: https://chromium-review.googlesource.com/1226577Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Cr-Commit-Position: refs/heads/master@{#55924}
-
Michael Achenbach authored
This reverts commit 836773c0. Reason for revert: Breaks full-debug support: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8%20Linux%20-%20full%20debug/5493 Original change's description: > Implement v8::internal::MicrotaskQueue::EnqueueMicrotask > > This adds `queue` and `pending_microtask_count` as members of > v8::internal::MicrotaskQueue, and implements its EnqueueMicrotask. > The implementation itself is similar to Isolate::EnqueueMicrotask. > > Bug: v8:8124 > Change-Id: Idb5c50b2add96b72cbe9e36aeec7cb568072f0cb > Reviewed-on: https://chromium-review.googlesource.com/1205430 > Commit-Queue: Taiju Tsuiki <tzik@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55884} TBR=ulan@chromium.org,adamk@chromium.org,hpayer@chromium.org,tzik@chromium.org Change-Id: I299884eb6b41fcbff7c486cad636ab7b9821dfe3 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8124 Reviewed-on: https://chromium-review.googlesource.com/1225752Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#55888}
-
tzik authored
This adds `queue` and `pending_microtask_count` as members of v8::internal::MicrotaskQueue, and implements its EnqueueMicrotask. The implementation itself is similar to Isolate::EnqueueMicrotask. Bug: v8:8124 Change-Id: Idb5c50b2add96b72cbe9e36aeec7cb568072f0cb Reviewed-on: https://chromium-review.googlesource.com/1205430 Commit-Queue: Taiju Tsuiki <tzik@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#55884}
-
- 04 Sep, 2018 1 commit
-
-
tzik authored
As a step of Context-associated MicrotaskQueue [1], this CL adds a stub for v8::internal::MicrotaskQueue. [1]: https://docs.google.com/document/d/1oNNhXF66dmwyj5S6Ri_g1vmBZltK8rWvZo1Tgqj64Z0/edit?usp=sharing Tbr: bmeurer@chromium.org Bug: v8:8124 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ie3d86ca49d46749660ec1316e4ae051528076e97 Reviewed-on: https://chromium-review.googlesource.com/1192803 Commit-Queue: Adam Klein <adamk@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#55624}
-
- 29 Aug, 2018 1 commit
-
-
Frank Tang authored
Bug: v8:8066 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I5511b6b9272804ebbb61bf2127a2ad51bfc70e28 Reviewed-on: https://chromium-review.googlesource.com/1179319Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#55481}
-
- 27 Aug, 2018 1 commit
-
-
Sathya Gunasekaran authored
The spec specifies that search and standard can not be valid values for the collation extension keyword. Instead users are expected to use the options bag to set the correct usage options. But, ICU expects the usage option to be set through the collation extension value. In this patch, we set the usage option using the collation extension value in ICU. For resolvedOptions, we filter out this extension value using ICU to be spec compatible. Previously, we stored the usage option on the JSCollator instance. But this patch changes the logic to just look it up from the icu::Collator when required. This saves one word of memory. This fails a test262 that was incorrectly fixed. A follow on patch will fix the test262 test. Bug: v8:5751 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I8c66c6286287e686f4cd152fa1301f9d51c38654 Reviewed-on: https://chromium-review.googlesource.com/1180488Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#55437}
-
- 14 Aug, 2018 1 commit
-
-
Ujjwal Sharma authored
This increases the size of a Collator instance by a word to store the bound compare function. The instance to be bound is stored on the context of this builtin function. Bug: v8:7800 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ie7581ab59fdfe4efff6d960e07ed2164fa6d9959 Reviewed-on: https://chromium-review.googlesource.com/1171967Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#55130}
-
- 08 Aug, 2018 1 commit
-
-
Sathya Gunasekaran authored
This patch ports most of the Intl.Collator from JS to C++. The Intl.Collator object no longer stores all the resolved values. Instead these are looked up on demand as part of Intl.Collator.prototype.resolvedOptions(), saving several words. In the future, we can cache the result of the resolvedOptions as well. In this patch, we use ICU to do parsing of the unicode extension in the bcp47 language tag instead of using a custom extension parser. This patch also fixes several spec compliance bugs as well. Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Iaaa7be4a628404da1bd83d882e04a2c6de70ebd9 Bug: v8:5751, v8:7480 Reviewed-on: https://chromium-review.googlesource.com/1165084 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54965}
-