- 07 May, 2019 40 commits
-
-
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}
-
Milad Farazmand authored
Change-Id: Id27308356d1e2fb46e20225e4cab9ccc006abda7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1599248Reviewed-by: Junliang Yan <jyan@ca.ibm.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Junliang Yan <jyan@ca.ibm.com> Commit-Queue: Milad Farazmand <miladfar@ca.ibm.com> Cr-Commit-Position: refs/heads/master@{#61286}
-
Michael Achenbach authored
TBR=mslekova@chromium.org NOTRY=true Bug: v8:8537 Change-Id: I0230916b533ddd7fa8d40ef531a475f1245366f8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598762Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61285}
-
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}
-
Michael Achenbach authored
TBR=mslekova@chromium.org NOTRY=true Change-Id: I22af7e52ac457279b057e3e8c0b346e73e37ff86 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598761Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61283}
-
Nico Hartmann authored
This cl also adds a separate test suite for BigInts Bug: v8:9213 Change-Id: I57271eed0f9c33a543fe15550964d55e3df3e963 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1596728 Commit-Queue: Nico Hartmann <nicohartmann@google.com> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#61282}
-
Michael Achenbach authored
TBR=tmrts@chromium.org Also skip some tests too slow in full debug mode. Bug: v8:9145 Change-Id: Ied8781be26d2c1efd7720e333775da9f6d632236 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598759 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61281}
-
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}
-
Santiago Aboy Solanes authored
GraphBuilderTester was introduced at a time where RawMachineAssembler was going to be deprecated (https://codereview.chromium.org/1423923003/). Now we know that it's not going to happen any time soon. Since GraphBuilderTester it's only used in one test which can use RawMachineAssembler, I updated it and removed the class. Now the .h file had another class, which is now the only class in the file. Therefore, I renamed it and updated the include calls to it. Also updated the include commands: some were not necessary, and some others could be moved to more aptly places. Bug: v8:9183 Change-Id: I44bf16090c0515b1b9ff6cbded1bdb0adb4e44e2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594563Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#61269}
-
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}
-
Michael Achenbach authored
This ports: https://crrev.com/c/1576022 Bug: chromium:958870 Change-Id: Id187f5af80823fe58e38f1365baebabfc6587316 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1594556Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61266}
-
Peter Marshall authored
The TraceObject passed to AppendTraceEvent can be completely uninitialized (set to all 0s) in some situations where a flush happens between creation and initialization of the TraceObject. Fix the MockTraceWriter in test-tracing to expect nullptr strings for the name of the object so that it does not try to construct an std::string from a null char*. Bug: v8:9214 Change-Id: Ib4f3b039ab98d5d786991134cb71ecc62f127179 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1598751 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Auto-Submit: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#61265}
-
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}
-
Michael Achenbach authored
Bug: v8:9145 Change-Id: Idb1a838666ea21cb260a141929fd80b400913836 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1596731Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#61262}
-
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}
-