- 08 Aug, 2018 4 commits
-
-
Tobias Tebbi authored
This adds a typeswitch statement typeswitch (e) case (x1 : Type1) { ... } case (x2 : Type2) { } ... ... case (xn : TypeN) { ... } This checks to which of the given types the result of evaluating e can be cast, in the order in which they are listed. So if an earlier type matches, a value of this type won't reach a later case. The type-checks are performed by calling the cast<T>() macro. The type of the argument passed to the cast macro is dependent on the case and excludes all types checked earlier. For example, in const x : Object = ... typeswitch (x) case (x : Smi) { ... } case (x : HeapNumber) { ... } case (x : HeapObject) { ... } there will be calls to cast<Smi>(Object) and cast<HeapNumber>(HeapObject), because after the Smi check we know that x has to be a HeapObject. With the refactored base.tq definition of cast, this will generate efficient code and avoid repeating the Smi check in the second case. The type system ensures that all cases are reachable and that the type given to the last case is safe without a runtime check (in other words, the union of all checked types covers the type of e). The cases can also be written as case (Type) { ... } , in which case the switched value is not re-bound with the checked type. Bug: v8:7793 Change-Id: Iea4aed7465d62b445e3ae0d33f52921912e095e3 Reviewed-on: https://chromium-review.googlesource.com/1156506 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#54958}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/60ce94a..8e67c4a Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/e19516b..ada05b3 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/2ebf9fd..735f71d TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I6af0db47405b4cd3352c62b42119523db0f904a4 Reviewed-on: https://chromium-review.googlesource.com/1166586Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#54957}
-
Michael Achenbach authored
TBR=yangguo@chromium.org NOTRY=true Bug: v8:8027 Change-Id: I3d4383dc4e2c0af25d4e51aba4f4d6695030248c Reviewed-on: https://chromium-review.googlesource.com/1166823Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#54956}
-
Michael Achenbach authored
This reverts commit 690bda84. Reason for revert: Speculative revert for: https://ci.chromium.org/p/v8/builders/luci.v8.ci/V8-Blink%20Linux%2064/25372 See more at: https://github.com/v8/v8/wiki/Blink-layout-tests Original change's description: > [Interpreter] Do not use IC slots for property load/stores in an IIFE and top-level code > > An IIFE or top-level code is executed only once hence, there is no need to collect > type feedback. We can save some memory by not using IC slots for property Loads/Stores > within a IIFE/top-level code. This CL emits Runtime Get/Set property calls instead of LdaNamedProperty > /StaNamedProperty for the property loads within a IIFE and top-level code. > > Change-Id: I3e0ce26d05d82bb3648cb9262c4e112a2c4556c9 > Reviewed-on: https://chromium-review.googlesource.com/1146579 > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Marja Hölttä <marja@chromium.org> > Reviewed-by: Camillo Bruni <cbruni@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Chandan Reddy <chandanreddy@google.com> > Cr-Commit-Position: refs/heads/master@{#54949} TBR=rmcilroy@chromium.org,adamk@chromium.org,marja@chromium.org,yangguo@chromium.org,cbruni@chromium.org,leszeks@chromium.org,verwaest@chromium.org,chandanreddy@google.com Change-Id: I642164a72453189fd0fe92b69f199f958ce56bef No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/1166782Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#54955}
-
- 07 Aug, 2018 22 commits
-
-
Ulan Degenbaev authored
This reverts commit 719d23c0. Reason for revert: TSAN failures Original change's description: > Fix invalidation of old-to-old slots after object trimming. > > A recorded old-to-old slot may be overwritten with a pointer to a new > space object. If the object containing the slot is trimmed later on, > then the mark-compactor may crash on a stale pointer to new space. > > This patch ensures that: > 1) On trimming of an object we add it to the invalidated_slots sets. > 2) The InvalidatedSlotsFilter::IsValid returns false for slots outside > the invalidated object unless the page was already swept. > > Array left-trimming is handled as a special case because object start > moves and cannot be added to the invalidated set. Instead, we clear > the freed memory so that the recorded slots contain Smi values. > > Bug: chromium:870226,chromium:816426 > Change-Id: Iffc05a58fcf52ece45fdb085b5d1fd4b3acb5d53 > Reviewed-on: https://chromium-review.googlesource.com/1163784 > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54953} TBR=ulan@chromium.org,hpayer@chromium.org,mlippautz@chromium.org Change-Id: I2e1ff83c2db7902488951a8f597d38133aeb3b04 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:870226, chromium:816426 Reviewed-on: https://chromium-review.googlesource.com/1165862Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#54954}
-
Ulan Degenbaev authored
A recorded old-to-old slot may be overwritten with a pointer to a new space object. If the object containing the slot is trimmed later on, then the mark-compactor may crash on a stale pointer to new space. This patch ensures that: 1) On trimming of an object we add it to the invalidated_slots sets. 2) The InvalidatedSlotsFilter::IsValid returns false for slots outside the invalidated object unless the page was already swept. Array left-trimming is handled as a special case because object start moves and cannot be added to the invalidated set. Instead, we clear the freed memory so that the recorded slots contain Smi values. Bug: chromium:870226,chromium:816426 Change-Id: Iffc05a58fcf52ece45fdb085b5d1fd4b3acb5d53 Reviewed-on: https://chromium-review.googlesource.com/1163784 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#54953}
-
Jakob Kummerow authored
This CL also contains some drive-by cleanup of related code. Bug: v8:5751, v8:7987 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I6144d16c1d85922efc1dc419cce8a2eba2a60056 Reviewed-on: https://chromium-review.googlesource.com/1161545Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#54952}
-
Mike Stanton authored
The CSA HasProperty has an inlining that makes it rather large. Also, tighten up some type usage. ToObject() returns a JSReceiver and we can do with less casting if we make use of this. Change-Id: I56d2443b5d409314cc3c74a5a079810d857727ad Reviewed-on: https://chromium-review.googlesource.com/1165241 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#54951}
-
Tobias Tebbi authored
Previously, we requested instantiation of generics prior to selecting a template overload, which resulted in unused templates being instantiated, possibly triggering unnecessary compile errors. Bug: v8:7793 Change-Id: I45f4bdbf8aa93749ece416c6c7458d64e6e051f5 Reviewed-on: https://chromium-review.googlesource.com/1154977 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#54950}
-
Creddy authored
An IIFE or top-level code is executed only once hence, there is no need to collect type feedback. We can save some memory by not using IC slots for property Loads/Stores within a IIFE/top-level code. This CL emits Runtime Get/Set property calls instead of LdaNamedProperty /StaNamedProperty for the property loads within a IIFE and top-level code. Change-Id: I3e0ce26d05d82bb3648cb9262c4e112a2c4556c9 Reviewed-on: https://chromium-review.googlesource.com/1146579Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Chandan Reddy <chandanreddy@google.com> Cr-Commit-Position: refs/heads/master@{#54949}
-
Tobias Tebbi authored
In the generated CSA, we called overloaded macros while relying on CSA subtyping of TNodes. This doesn't work well with overloads, because for C++ any TNode subtyping is treated as an implicit conversion, which makes these calls ambiguous for C++. As a solution, we insert implicit_cast conversions for arguments according to the type predicted by Torque. This way, a CSA overload is always called with exactly the signature declared in base.tq. This has the additional benefit that it validates the signatures declared in base.tq, which could previously be too permissive. Also, this triggered a bug in structs, where VisitResult's were carrying the wrong type. Bug: v8:7793 TBR: danno@chromium.org Change-Id: I8ed4bfd04793c8a8805a4a3dd5cf2a85c20ce786 Reviewed-on: https://chromium-review.googlesource.com/1165237 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#54948}
-
Marja Hölttä authored
The previous logic had 2 if-elses, but the branch taken in the first one determines the branch taken in the second one too (so there are 2 possibilities, not 4). Make the structure reflect this. BUG=v8:8015 Change-Id: I75ce86aa9731c0cae21c82f9aad6c83cb950e0d6 Reviewed-on: https://chromium-review.googlesource.com/1163613Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54947}
-
Tobias Tebbi authored
This enables fast bounds checks on FixedArray's. Change-Id: I0ae57b2c6981d8e1b2c7017ba658fd9c890d2bad Reviewed-on: https://chromium-review.googlesource.com/1163614 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#54946}
-
Georg Neis authored
R=mvstanton@chromium.org Change-Id: I4e717b0d608837cdde2bea2ebbcf83a2a5d6b749 Reviewed-on: https://chromium-review.googlesource.com/1165144Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54945}
-
Sigurd Schneider authored
The instruction size in bytes is now kInstrSize on all platforms. Bug: v8:6666 Change-Id: I2f9880a6a74199a439c8327a4117efb74240aa22 Reviewed-on: https://chromium-review.googlesource.com/1164955 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54944}
-
Yang Guo authored
R=machenbach@chromium.org Bug: v8:7855 Change-Id: Ifcd28d0aa24e07f0db70305d64b20361530069b0 Reviewed-on: https://chromium-review.googlesource.com/1163677 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#54943}
-
Michael Starzinger authored
This adds initial support for concurrently patching jump table slots. It is needed once different Isolates share code (for the --wasm-shared-code feature). We need to ensure that instructions holding the target address within a jump table slot do not cross cache-line boundaries. To do this, the jump table has been split into consecutive pages. Note that this also adds a stress test for multiple threads hammering at a single slot concurrently. The test is currently limited to the ia32 and the x64 architecture, but will be extended to cover others. The test reliably triggers tearing of the target address on almost every run of the test and hence serves to prevent regressions. R=clemensh@chromium.org TEST=cctest/test-jump-table-assembler BUG=v8:8018 Change-Id: Ife56bbb61ffcae5d8906ca7b8c604b195603707c Reviewed-on: https://chromium-review.googlesource.com/1163664 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54942}
-
Georg Neis authored
Map::AsElementsKind returns the given map if it already has the desired elements kind. Change-Id: Ia9c92eabdb28c82da376eb87f0117dc76414240d Reviewed-on: https://chromium-review.googlesource.com/1164368Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54941}
-
Andreas Haas authored
For async instantiation of WebAssembly code we had the assumption that a pending exceptions (an exception which comes from execution JS code) and an ErrorThrower error cannot occur at the same time. This assumption turned out to be wrong. With this CL we handle this case by prefering pending_exceptions over ErrorThrower errors. In addition I extended the tests for failing instantiation to also exercise async instantiation, and I added a regression test. R=clemensh@chromium.org Bug: chromium:870646 Change-Id: I4cb54ff8642ad4ea193b20f79905c9f6508c2b2e Reviewed-on: https://chromium-review.googlesource.com/1163511Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#54940}
-
Ivica Bogosavljevic authored
MIPSr1 doesn't support SEB and SEH instructions and this causes test InstructionSelectorTest.Word32SarWithWord32Shl to fail. This CL disables this test on MIPSr1. TEST=unittests/InstructionSelectorTest.Word32SarWithWord32Shl Change-Id: I284a85210bd0d38374ca339671643560e8a305e2 Reviewed-on: https://chromium-review.googlesource.com/1164363Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Cr-Commit-Position: refs/heads/master@{#54939}
-
Ross McIlroy authored
Change-Id: Ia5fa003e8a3bc205ea0384bea9ebb3f6532a1771 Reviewed-on: https://chromium-review.googlesource.com/1163619Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54938}
-
Dan Elphick authored
This reverts commit 5414884a. Reason for revert: breaks the roll due to not testing CrOs Original change's description: > [api] Remove deprecated functions > > Removes all V8_DEPRECATED functions that weren't recently marked as well > any V8_DEPRECATE_SOON function that relied on using the address of > an object to get hold of the Isolate. > > Normally we would have advanced the V8_DEPRECATE_SOON methods to > V8_DEPRECATE in this release and removed them in the follow release, but > their continuing presence blocks the work on creating a shared > Read-Only space where some objects would not belong to any single > Isolate. In preparation chromium and node.js (via the v8/node github) > have been modified in advance. > > Bug: v8:7786 > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I8b4b06189896d94aff908ebcd121b3b38f9b482a > Reviewed-on: https://chromium-review.googlesource.com/1154915 > Commit-Queue: Dan Elphick <delphick@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54915} TBR=yangguo@chromium.org,delphick@chromium.org Change-Id: Iaf23e04d55a95b01b0423effa6cde3c0be5e2ba8 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:7786 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1164902Reviewed-by: Dan Elphick <delphick@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#54937}
-
Camillo Bruni authored
- Cover array-indices corner cases around 2**32 Bug: v8:8019 Change-Id: Ic5d81a6944b10067b64ffc596472c076adc49c75 Reviewed-on: https://chromium-review.googlesource.com/1163786Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#54936}
-
Michael Starzinger authored
R=sigurds@chromium.org Change-Id: I54df6ab72a3d6836be15d4a26b8a1615628eb872 Reviewed-on: https://chromium-review.googlesource.com/1163703Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54935}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7d6c957..60ce94a Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/d2f6e76..e19516b Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/82bb756..2ebf9fd Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/657bfc2..42f0661 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I6673d2a7b45d1ffb4290e449eeb1c73921e5a1c6 Reviewed-on: https://chromium-review.googlesource.com/1164625 Commit-Queue: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#54934}
-
Frank Tang authored
Change-Id: I4b7ea624fbf99f3d1fc67aa77b0c09a8aedde8c6 Reviewed-on: https://chromium-review.googlesource.com/1161704Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#54933}
-
- 06 Aug, 2018 14 commits
-
-
Jakob Kummerow authored
A recent refactoring accidentally disabled the code path that keeps negative indices for TypedArrays on the fast path. Change-Id: I89bbb414f54d04f85af77c6d205705906925c61e Reviewed-on: https://chromium-review.googlesource.com/1164469Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#54932}
-
Kyounga Ra authored
- DCHECK(IsMipsArchVariant(kMips32r2) || IsMipsArchVariant(kMips32r6)) is failed. - I tried not to select instruction kMipsSeb in case of kMips32r1. R=ivica.bogosavljevic@mips.com Bug: v8:8006 Change-Id: If07450b1a35b4e9cb608344e137c032381da224d Reviewed-on: https://chromium-review.googlesource.com/1160073 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Ivica Bogosavljevic <ibogosavljevic@wavecomp.com> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54931}
-
Bill Budge authored
- Solves a problem for PPC in a configuration where commit page size is 64K. https://chromium-review.googlesource.com/c/v8/v8/+/1149515 - Uses existing VM allocation code to get properly aligned memory. - Makes sure the size for SetPermissions is a multiple of system page size. Bug:chromium:756050 Change-Id: Ib3799ab7a3bb44b0091c234234c1cc47938379c2 Reviewed-on: https://chromium-review.googlesource.com/1161210 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54930}
-
Ross McIlroy authored
We want to limit these cases since they result in unecessary work on background threads doing the streaming parse / compile, and delay the script execution unecessarily while waiting for the streamer to complete. BUG=chromium:865098 Change-Id: Ibb3346c2e644bb333521d876d00aeb9cc063b6aa Reviewed-on: https://chromium-review.googlesource.com/1163669Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#54929}
-
Marja Hölttä authored
Now we can remove FixedArrayOfWeakCells (this was the last user). Previous try: https://chromium-review.googlesource.com/1150170 BUG=v8:7308 Change-Id: Ie924e379ea8bbd797430e3ca591019fe001e78ad Reviewed-on: https://chromium-review.googlesource.com/1154909Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54928}
-
Clemens Hammacher authored
In Liftoff, bugs often happen only if specific cache states are constructed. For this, longer sequences of instructions are needed. Thus, add a few rules to increase the chance of generating longer sequences. R=ahaas@chromium.org Change-Id: I8f112edf0280282bf275585e8a15772013c25245 Reviewed-on: https://chromium-review.googlesource.com/1158695Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#54927}
-
Simon Zünd authored
This CL is the first step towards a SetProperty stub, by adding a stub that redirects to the runtime and replacing every runtime call-site with a call to this stub. A followup CL will then add an implementation to the stub similar to KeyedStoreGenericAssembler::KeyedStoreGeneric(). R=cbruni@chromium.org, jgruber@chromium.org Change-Id: Iff2f913988cada6220d54817d94d011ad6de2b77 Reviewed-on: https://chromium-review.googlesource.com/1163519 Commit-Queue: Simon Zünd <szuend@google.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#54926}
-
Sigurd Schneider authored
Change-Id: Icf0507c6e50533c64a42fcf934bb1472ff21f68a Reviewed-on: https://chromium-review.googlesource.com/1163618 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#54925}
-
Hai Dang authored
Bug: v8:7973 Change-Id: I76308296dd45ef797d1eafd6e2736ccefb54302d Reviewed-on: https://chromium-review.googlesource.com/1162222Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Hai Dang <dhai@google.com> Cr-Commit-Position: refs/heads/master@{#54924}
-
Georg Neis authored
- Trigger serialization for more objects, such as some root maps. - Serialize more data for certain object kinds. - Add macros for convenience. - Mark a few functions as const. R=jarin@chromium.org Bug: v8:7790 Change-Id: Id39b97e93728c0b3d87d9546bdf68abd04496c05 Reviewed-on: https://chromium-review.googlesource.com/1158572Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54923}
-
Michael Starzinger authored
This is in preparation of making sure that jump table slots don't cross cache line boundaries. It is only introducing helper functions for back and forth conversion between "index" and "offset", but should not make any functional changes yet. R=ahaas@chromium.org BUG=v8:8018 Change-Id: I6ab525f9b89a6a15414c043a54c9fffb527a1ab6 Reviewed-on: https://chromium-review.googlesource.com/1163517Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54922}
-
Marja Hölttä authored
This reverts commit a5efd507. Reason for revert: was a GC bug, unrelated to this CL. Original change's description: > Revert (partially) "Reland [in-place weak refs] Use WeakArrayList in Heap::noscript_list." > > Reason: flaky wasm crashes. > > This leaves WeakArrayList::RemoveOne (+ tests for it) in place. > > BUG=v8:7308, v8:8014 > > Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng > Change-Id: I1195d061ae7d3c82f921f94f50df3f09a55de5ca > Reviewed-on: https://chromium-review.googlesource.com/1161904 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Marja Hölttä <marja@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54891} TBR=marja@chromium.org,mlippautz@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:7308, v8:8014 Change-Id: Id8002e2178ac89378b047dd0acd1bf4e3c272918 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/1162124Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#54921}
-
Georg Neis authored
Check each dependency's validity again right before installing it, because a GC during preceding installations can theoretically trigger invalidation for some dependency kinds. Also inline the IsSane checkers into the constructors. R=jarin@chromium.org Change-Id: I1331dee27f01e8fd07cb953dddfed72fd1841559 Reviewed-on: https://chromium-review.googlesource.com/1161933Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#54920}
-
Rodrigo Bruno authored
Node.js is using AdjustAmountOfExternalAllocatedMemory to get external memory from V8 [1]. In addition, they have a unittest that verifies that AdjustAmountOfExternalAllocatedMemory returns the correct value [2]. This CL proposes a new way to report external memory through HeapStatistics. [1]https://github.com/nodejs/node/blob/07cb69720bec251a1c450b3770db2136ac009778/src/node_process.cc#L187 [2]https://github.com/nodejs/node/blob/master/test/parallel/test-memory-usage.js Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ia58ed0bab1c1d4ee23672e1347b9a00b6705a43c Reviewed-on: https://chromium-review.googlesource.com/1162156 Commit-Queue: Rodrigo Bruno <rfbpb@google.com> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#54919}
-