- 07 May, 2019 40 commits
-
-
Z Duong Nguyen-Huu authored
This is the follow-up for frozen, sealed packed elements kind. Design docs: bit.ly/fast-frozen-sealed-elements-in-v8 This change is only support the transition from holey elements to holey sealed elements (via object.seal) or to holey frozen elements (via object.freeze). Added tests for non-extensible, sealed, frozen holey elements in https://chromium-review.googlesource.com/c/v8/v8/+/1574503 and https://chromium-review.googlesource.com/c/v8/v8/+/1582481 Bug: v8:6831 Change-Id: Ia4373648f79f2ebebb390982a503145844a0c123 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1574777 Commit-Queue: Z Nguyen-Huu <duongn@microsoft.com> Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#61307}
-
Milad Farazmand authored
Port 0a0d70eb R=sigurds@chromium.org, joransiu@ca.ibm.com, jyan@ca.ibm.com, michael_dawson@ca.ibm.com BUG= LOG=N Change-Id: Id4a864b95368c392de8b363076114cd36c463397 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598549Reviewed-by:
Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61306}
-
Balaram Makam authored
When one of two compared strings is empty, or when both are the same object, we can skip the calls to Flatten and into ICU. Performance results on hikey620(cortex-a53) device: Speedometer2.0 - no impact. Jetstream2.0 - only impacts CDJS subtest: name old score new score delta CDJS 2.33 ± 3% 2.38 ± 1% +2.35% (p=0.009 n=6+5) Change-Id: Ibe490f86188caab1d7712b52c610658e1e2b819c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584221 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#61305}
-
Santiago Aboy Solanes authored
This CL changes the instruction selector so that we use the normal load and store, instead of the one that (de)compresses. Also removed "return;"s and "break;"s that were unnecessary. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: I4f2a82bfc4d300dd56300f394f59c3f9da242ba8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593296 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#61304}
-
Mythri A authored
In PrepareFunctionForOptimization, for functions that are already optimized we didn't hold on to the bytecode array strongly. If these functions get deoptimized before we call OptimizeFunctionOnNextCall, then they need to be re-optimized again. So we should hold the bytecode arrays for optimized functions as well. OptimizeFunctionOnNextCall removes it from the table if the function is still optimized. Bug: v8:8801 Change-Id: I7f3d94d9842223d85843c9ddb109c8bc9f414891 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599388 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61303}
-
Igor Sheludko authored
... to minimize pollution of v8::internal namespace. This CL also removes usages of WriteBarrierKind from CodeAssembler interface. Bug: v8:9183 Change-Id: I7e87c0a98cfd08b3740a022cf12d3aab415da67a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599176 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61301}
-
Santiago Aboy Solanes authored
This is the last string of CLs! We eliminated all Tagged loads and stores. That's why I also cleaned up that TODO in machine-type.h Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: Icb23b396d0cbb6ee914637e34e26b52435f0000c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1593085 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#61300}
-
Toon Verwaest authored
That's the only place where it's used, with a known StringTableKey type. This also makes MakeThin available on String. Change-Id: If1aca892045dadae91c902e783822280ae01f485 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598764 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61299}
-
Clemens Hammacher authored
In the {WasmEngine::RemoveIsolate} method, we might remove the last outstanding isolate for the current GC. In that case, finish the GC at that point. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I7d710756d29265e0552fcc318435133f7db03dda Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598706Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61298}
-
Maggie Chen authored
This is for the finch experiment CL 1592792 V8HugeMaxOldGenerationSize (--js-flags="huge_max_old_generation_size"). The purpose of this finch is to support web apps that require more heap space for their data sets. The current max_old_space_size is 2 GB. This CL increases the size to 4 GB for 64-bit systems with a physical memory size bigger than 16 GB. This CL does not change MaxGrowingFactor. HeapController::kMaxSize is still set to 2GB so the GC schedule remains the same. All tests from "tools\dev\gm.py x64.release.check" passes in my local machine with FLAG_increase_max_old_space_size forced to true. Bug:958974 Change-Id: I9d916d75c0b16342040dd1336e28e423e5bcc474 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1592129 Commit-Queue: Maggie Chen <magchen@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#61297}
-
Clemens Hammacher authored
This reverts commit 2d45ecf0. Reason for revert: Fails on arm64 msan: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/26567 Original change's description: > [torque] Introduce force_assert_statements compiler option > > "assert(...)" statements are usually only visited and generated in > debug builds. To provide Language Server support for statements inside > asserts, the force_assert_statements option allows to manually > override this behavior and visit assert statements in release builds. > > R=sigurds@chromium.org > > Bug: v8:7793 > Change-Id: I38f48e35f2b0a1a98abb74b7babb1edd2d7dba24 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599180 > Auto-Submit: Simon Zünd <szuend@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61295} TBR=sigurds@chromium.org,szuend@chromium.org Change-Id: Ib0f72a756ff1f6c9838d3d7f837a326b1dab3278 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7793 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599549Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61296}
-
Simon Zünd authored
"assert(...)" statements are usually only visited and generated in debug builds. To provide Language Server support for statements inside asserts, the force_assert_statements option allows to manually override this behavior and visit assert statements in release builds. R=sigurds@chromium.org Bug: v8:7793 Change-Id: I38f48e35f2b0a1a98abb74b7babb1edd2d7dba24 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599180 Auto-Submit: Simon Zünd <szuend@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61295}
-
Simon Zünd authored
DocumentSymbol responses provide all symbols (macros, classes, etc.) in a given document. The LSP standard evolved over time and supports two different kind of responses here: - A simpler one, that is a plain list of all the symbols - A more detailed one, allowing a hierarchy of symbols. For example a class symbol has a list of field/method symbols attached. This is used by editors to build hierarchical outline views. For now, the simpler response is chosen as its also used for workspace wide symbol searches. This CL adds the necessary boilerplate so the actual implementation CL is easier to review. R=tebbi@chromium.org Bug: v8:8880 Change-Id: I6c86fc839b1f4e0309f6403a5f9afd5c162c0e89 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598757 Auto-Submit: Simon Zünd <szuend@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#61294}
-
Santiago Aboy Solanes authored
The Change nodes have to be explicitly introduced in effect control linearizer since it runs after the pass that adds the Change nodes automatically. This is a CL in a string of CLs that aims to eliminate all Tagged loads and stores. We are getting close to that goal. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: I07521edad0d6d28a549572b56edd91aa5ddb7146 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591774 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#61293}
-
Toon Verwaest authored
Change-Id: I079befeac55aae9ef9ff7743f69fdd3977adcb18 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598760 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#61292}
-
Benedikt Meurer authored
This switches --modify-field-representation-inplace to true again, after the issue with the elements kinds transitions is fixed. Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel Doc: http://bit.ly/v8-in-place-field-representation-changes Bug: v8:8749, v8:8865, v8:9114, chromium:959645, chromium:952682 Change-Id: Ieb9a40d6ff44dd5f327e18ed7e7a169951c58416 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598705 Auto-Submit: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#61291}
-
Sigurd Schneider authored
This allows generic specializations to appear before the generic itself. Bug: v8:7793 Change-Id: I127fb49380a14cdf2a63854117d25fc865a95352 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599178Reviewed-by:
Simon Zünd <szuend@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61290}
-
Toon Verwaest authored
This is a step towards reducing the number of StringTableKeys to the absolute minimum so we can better optimize how they work. This always flattens ConsStrings into a buffer to avoid expensive comparison with cons string (as well as hash computation). Change-Id: I6dcf0bdd2a722f490dad02b7f887083e1ac46000 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598707Reviewed-by:
Igor Sheludko <ishell@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#61289}
-
Santiago Aboy Solanes authored
This is a CL in a string that aims to replace the Tagged loads and stores nodes that are still being created. Also took the liberty of cleaning up part of wasm-compiler. There were some cases where we could have been using the existing macros, but weren't. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: Ic6ce2f9dc9f2ad440c91c98b1f449d3c76f42fd2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591773Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61288}
-
Santiago Aboy Solanes authored
This is a reland of cb3caa1e Original change's description: > [ptr-compr][turbofan] Adding the final compressed access builders > > This CL is the final one for the access-builder.cc's changes. There are > still Tagged loads and stores (e.g in wasm) which will be tackled on > following CLs. > > Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng > Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng > Bug: v8:8977, v8:7703 > Change-Id: I2667eaacbada0846fe5f128bb17a1a305862c64d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590077 > Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61272} Bug: v8:8977, v8:7703 Change-Id: I6bdaad7e6c628dfa6d5a41581fd0ee4ef9d36260 Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599168Reviewed-by:
Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#61287}
-
Benedikt Meurer authored
Generalize the existing work-around in the method `Map::GeneralizeIfCanHaveTransitionableFastElementsKind()` to also go to the most general field representation (in addition to going to the most field type) for objects with transitionable fast elements kinds. That means that we essentially disable field representation tracking for arrays, arguments objects and value wrappers (for which the field type tracking is already disabled). Drive-by-fix: Remove the `constness` parameter to the above mentioned helper method. And fix the printing of the descriptor expectations to properly print the field type. Change-Id: I1bba9415f4bdd2c916f9d105d9120c7071d2c498 Cq-Include-Trybots: luci.chromium.try:linux-rel,win7-rel Doc: http://bit.ly/v8-in-place-field-representation-changes Bug: v8:8749, v8:8865, v8:9114, chromium:959645, chromium:952682 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598756 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#61284}
-
Toon Verwaest authored
- Performs hash / length check before calling IsMatch - Casts to string before calling IsMatch - Removes special two-char internalization key (will look into removing StringTableNoAllocateKey next, and possible fold StringTableInsertionKey into InternalizedStringKey). Change-Id: Ida76761eb2c3dc350c829ac2bfe12d52aef5f96d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598753Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#61280}
-
Sigurd Schneider authored
Bug: v8:7793 Change-Id: I0349b4fe3b69e5403a111a5fd43ff11021b7cf0b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598701 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Auto-Submit: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61279}
-
Clemens Hammacher authored
We only run one GC at a time. If another one should be triggered before the previous one finished, that second one is just ignored. This CL changes that to set a bit on the current GC to trigger another one once it finished. This fixes situations where a) a lot of code becomes dead after a GC is triggered but before it finished, but b) no more code becomes dead after the GC. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I5b5ca055124f467e1b0d67b8eb818069affc4a1d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598696Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61278}
-
Clemens Hammacher authored
Beside scheduling a foreground task per isolate, do also request a stack guard interrupt to report live code objects. This ensures that also workers which never return from wasm code will report their live wasm code objects. R=mstarzinger@chromium.org Bug: v8:8217 Change-Id: I07ba9e5125263365596331197813494d8ad5ee89 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1596739Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#61277}
-
Maya Lekova authored
This reverts commit cb3caa1e. Reason for revert: Speculative revert, timeouts on Windows https://ci.chromium.org/p/v8/builders/ci/V8%20Win32%20-%20nosnap%20-%20shared/33313 Original change's description: > [ptr-compr][turbofan] Adding the final compressed access builders > > This CL is the final one for the access-builder.cc's changes. There are > still Tagged loads and stores (e.g in wasm) which will be tackled on > following CLs. > > Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng > Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng > Bug: v8:8977, v8:7703 > Change-Id: I2667eaacbada0846fe5f128bb17a1a305862c64d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590077 > Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Michael Stanton <mvstanton@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61272} TBR=mvstanton@chromium.org,jarin@chromium.org,solanes@chromium.org Change-Id: I7c1ba713dc808359b97e6fa8f7afaa87c9daad68 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8977, v8:7703 Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598703 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#61276}
-
Peter Marshall authored
This is a reland of ad44c258 Patchset 2 is the original CL Patchset 3 fixes some misuses of FixedArrayBase::length() and adds some DCHECKS to flush out any more misuses. Patchset 4 adds the PPC/S390 port by miladfar@ca.ibm.com. Original change's description: > [typedarray] Make JSTypedArray::length authoritative. > > This is the first step towards full huge typed array support in V8. > Before this change, the JSTypedArray::length and the elements backing > store length (FixedTypedArrayBase::length) were used more or less > interchangeably to determine the number of elements in a JSTypedArray. > > With this change we disentangle these two lengths, and instead make > JSTypedArray::length authoritative. For on-heap typed arrays, the > FixedTypedArrayBase::length will remain the number of elements in the > backing store, but for the off-heap typed arrays, this length will be > set to 0 (matching the fact that the FixedTypedArrayBase instance does > not contain any elements itself). > > This also unifies the JSTypedArray::set_/length() and length_value() > methods to only have JSTypedArray::set_/length() which returns/takes > size_t values. Currently this still requires the values to be in Smi > range, but later we will extend this to allow arbitrary size_t values > (in the safe integer range). > > Bug: v8:4153, v8:7881 > Change-Id: Iff9089130bb31fa9e08e0cf913e7ab52c3dbf107 > Cq-Include-Trybots: luci.chromium.try:linux-blink-rel > Doc: http://doc/1Z-wM2qwvAuxH46e9ivtkYvKzzwYZg8ymm0x0wJaomow > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1543729 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Reviewed-by: Ben Titzer <titzer@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60648} Bug: v8:4153, v8:7881, v8:9105 Change-Id: Ic38f833071a723642ebc6f82a4012dbc0878ef98 Cq-Include-Trybots: luci.chromium.try:linux-blink-rel Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594435Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Hannes Payer <hpayer@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#61275}
-
Andreas Haas authored
The implementation is done with a runtime function. R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: I5f27b1fdc7cc2baf6919b4db3bf053a350b91a74 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1596738 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#61274}
-
Dan Elphick authored
This reverts commit 758700a7. Reason for revert: Broken Original change's description: > [compiler] Don't collect source positions for the top frame > > While most source positions were not collected even throwing exceptions, > the top frame still was always collected as it was used to initialize > the JSMessageObject. This skips even that frame, by storing the > SharedFunctionInfo and bytecode offset in the JSMessageObject allowing > it to lazily evaluate the actual source position. > > Also adds tests to test-api.cc that test each of the source position > functions in isolation to ensure that they don't rely on previous > invocations to call the source collection function. > > Since no source positions are now collected at the point when an > exception is thrown, the mjsunit/stack-traces-overflow now passes again > with the flag enabled. (cctest/test-cpu-profiler/Inlining2 is now the > only failure). > > Bug: v8:8510 > Change-Id: Ic5382bdbab65cd8838f0c84b544fabb1a9109d13 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1587385 > Commit-Queue: Dan Elphick <delphick@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61271} TBR=ulan@chromium.org,rmcilroy@chromium.org,delphick@chromium.org Change-Id: I3ee0b5db5f8a1b3255f68070dc10d27d0e013048 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:8510 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598758Reviewed-by:
Dan Elphick <delphick@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#61273}
-
Santiago Aboy Solanes authored
This CL is the final one for the access-builder.cc's changes. There are still Tagged loads and stores (e.g in wasm) which will be tackled on following CLs. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: I2667eaacbada0846fe5f128bb17a1a305862c64d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1590077 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#61272}
-
Dan Elphick authored
While most source positions were not collected even throwing exceptions, the top frame still was always collected as it was used to initialize the JSMessageObject. This skips even that frame, by storing the SharedFunctionInfo and bytecode offset in the JSMessageObject allowing it to lazily evaluate the actual source position. Also adds tests to test-api.cc that test each of the source position functions in isolation to ensure that they don't rely on previous invocations to call the source collection function. Since no source positions are now collected at the point when an exception is thrown, the mjsunit/stack-traces-overflow now passes again with the flag enabled. (cctest/test-cpu-profiler/Inlining2 is now the only failure). Bug: v8:8510 Change-Id: Ic5382bdbab65cd8838f0c84b544fabb1a9109d13 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1587385 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#61271}
-
Santiago Aboy Solanes authored
Follow -up CL that aims to eliminate the straggler tagged loads and stores. It includes a lot of access builder changes. There are 8 access (2 Any and 6 Pointer) that are still remaining as tagged since changing those to compressed make some tests fail. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:8977, v8:7703 Change-Id: Iad305fd3a2da257764d22bad30b25489f727e676 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1588431Reviewed-by:
Jaroslav Sevcik <jarin@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61270}
-
Simon Zünd authored
R=sigurds@chromium.org Bug: v8:8880 Change-Id: Ib862842f3624689d004b1b7750f260be79fc9c36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598693 Commit-Queue: Simon Zünd <szuend@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Auto-Submit: Simon Zünd <szuend@chromium.org> Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#61268}
-
Mythri A authored
This is a reland of d14ed12e with fix for test failures in lite mode. When handling load named properties (without feedback vectors) we used to miss to runtimes if the prototypes aren't set. This was because we wanted to give the prototype a chance to become fast, since most prototypes start in slow mode but move to fast after the initial setup. Though this check is not really useful when we don't have feedback vectors, and once feedback vectors are allocated we will turn the prototypes fast anyway. Bug: v8:8394, v8:8860 Change-Id: I5c7b5061e1d9068c72d6f0eea47517880940a054 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1591772Reviewed-by:
Toon Verwaest <verwaest@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#61267}
-
Sigurd Schneider authored
Torque semantic analysis is now a four-stage process: 1. The TypeDeclarationVisitor introduces a TypeAlias for every TypeDeclaration* (or derived) in the Torque source, but does not process the TypeDeclaration* itself. 2. All aliases are resolved in a dependency respecting manner. This CL also changes struct member resolution to happen at this point already. Types for classes are created, but their members are not resolved to allow classes to mutually reference each other in their field types. 3. 'value' declarations (macros, etc.) are processed. 4. Members of classes are processed. Bug: v8:7793 Change-Id: I46108555a5cdf30df03c5d4399ec786ee6cc6df4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584319 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#61264}
-
Simon Zünd authored
To obtain SourcePositions for unary and binary operators, this CL changes the "OneOf" parser rule to produce an Identifier*. Forwarding this new identifier as callee for a CallExpression enables "goto Definition" support for operators in the Language Server. Side note: VSCode won't highlight operators with an underlined font when hovering with Ctrl pressed. "goto Definition" will work nonetheless using default F12 or Ctrl-Click. R=tebbi@chromium.org Bug: v8:7793 Change-Id: Iada06009e324a3de8c453ec058427049e921a70d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598690 Auto-Submit: Simon Zünd <szuend@chromium.org> Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#61263}
-
Simon Zünd authored
The Torque compiler generates macros for accessing fields in classes. These are currently indistiguishable from user defined macros. To improve the upcoming symbol search in the Torque Language Server, this CL introduces a flag on macros to differentiate user defined and auto generated macros. R=sigurds@chromium.org Bug: v8:7793 Change-Id: I84a8ab14535ec779494b5b2e887fda8fc4edf3e5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598688Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61261}
-
Maya Lekova authored
The call to EnsureSourcePositionsAvailable for a given SharedFunctionInfo is now done in the serializer for each SFI that is marked as serialized for compilation. This will enable brokerization of the JSInliner class. Change-Id: I7821a50fcac8a3e19386e98758f2b0dea3023bb6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1582400 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#61260}
-
Jakob Gruber authored
This reverts commit efd8c2d9. Reason for revert: Performance regressions (chromium:958035) Original change's description: > Remove --win64-unwinding-info flag and always generate unwind info on Win/x64 > > The generation of unwind info to enable stack walking on Windows/x64 > (https://chromium-review.googlesource.com/c/v8/v8/+/1469329) was implemented > behind a temporary flag, in order to coordinate these changes with the > corresponding changes in Chromium. > > The required changes to Chromium > (https://chromium-review.googlesource.com/c/chromium/src/+/1474703) have also > been merged, so we can now remove the flag and enable the generation of stack > unwinding info by default on Windows/x64. > > Bug: v8:3598 > Change-Id: I88814aaeabecc007f5262227aa0681a1d16156d5 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1573138 > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Commit-Queue: Paolo Severini <paolosev@microsoft.com> > Cr-Commit-Position: refs/heads/master@{#61020} TBR=ulan@chromium.org,mstarzinger@chromium.org,jgruber@chromium.org,paolosev@microsoft.com # Not skipping CQ checks because original CL landed > 1 day ago. Tbr: ulan@chromium.org,mstarzinger@chromium.org,paolosev@microsoft.com Bug: v8:3598, chromium:958035 Change-Id: Ia86a230ee83080ed8ace43e4641c8c1013043df4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598748 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#61259}
-
Milad Farazmand authored
This reverts commit b51404a8. Reason for revert: Need to revert this change due to a revert on this commit: 18100666 Original change's description: > PPC/S390: [typedarray] Make JSTypedArray::length authoritative. > > Removing NumberToSize on PPC and S390. > > Port ad44c258 > > Change-Id: Ic5d3132f1bb396f07a26399d2e3f6aca4689aa3f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1554227 > Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Cr-Commit-Position: refs/heads/master@{#60691} TBR=jarin@chromium.org,titzer@chromium.org,petermarshall@chromium.org,bmeurer@chromium.org,miladfar@ca.ibm.com # Not skipping CQ checks because original CL landed > 1 day ago. Change-Id: Idd6cf715ce25ed35f9cb55c70e20183072c660d3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598308Reviewed-by:
Milad Farazmand <miladfar@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61257}
-