- 08 Jul, 2019 36 commits
-
-
Bill Budge authored
Defers some work in the non-asm.js case Change-Id: Id20863fb2af83148271408b0242d49e03be29d3b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1682213 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62580}
-
Irina Yatsenko authored
The current integration of crash keys into v8 got the dependencies wrong: it introduced into v8 a dependency on components and base. This change will allow moving the implementation into "gin" (via Platform's abstraction), which is ok to depend on components and base, while providing the default noop implementation for the embedders that don't care to collect crash keys. Gin's side: https://chromium-review.googlesource.com/c/chromium/src/+/1690003. Bug: v8:9323 Change-Id: I7b6e3e2cdc4b5f14f61ad20d2c362344d53896c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1689834 Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#62579}
-
Clemens Hammacher authored
This reverts commit 31cd5d83. Reason for revert: It breaks my heart to revert this, but it fails differently on several bots, e.g. https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20debug/26671. Original change's description: > [arraybuffer] Rearchitect backing store ownership > > This CL completely rearchitects the ownership of array buffer backing stores, > consolidating ownership into a {BackingStore} C++ object that is tracked > throughout V8 using unique_ptr and shared_ptr where appropriate. > > Overall, lifetime management is simpler and more explicit. The numerous > ways that array buffers were initialized have been streamlined to one > Attach() method on JSArrayBuffer. The array buffer tracker in the > GC implementation now manages std::shared_ptr<BackingStore> pointers, > and the construction and destruction of the BackingStore object itself > handles the underlying page or embedder-allocated memory. > > The embedder API remains unchanged for now. We use the > v8::ArrayBuffer::Contents struct to hide an additional shared_ptr to > keep the backing store alive properly, even in the case of aliases > from live heap objects. Thus the embedder has a lower chance of making > a mistake. Long-term, we should move the embedder to a model where they > manage backing stores using shared_ptr to an opaque backing store object. > > R=mlippautz@chromium.org > BUG=v8:9380,v8:9221 > > Change-Id: I48fae5ac85dcf6172a83f252439e77e7c1a16ccd > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584323 > Commit-Queue: Ben Titzer <titzer@chromium.org> > Reviewed-by: Ben Titzer <titzer@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Yang Guo <yangguo@chromium.org> > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62572} TBR=ulan@chromium.org,yangguo@chromium.org,mstarzinger@chromium.org,titzer@chromium.org,gdeepti@chromium.org,mlippautz@chromium.org Change-Id: Ib35788ba8c31192d90cbc72df3dbc41030f109de No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9380, v8:9221 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1691034Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62578}
-
Santiago Aboy Solanes authored
Locally tested, octane results are the same or better when using branchful decompression in generated code. The biggest one is DeltaBlue in x64 which improves about 25%. x64's EarleyBoyer is another important one with ~10% improvement. Bug: v8:7703 Change-Id: Ie1edd6e216b307a1f5263b22472c0a64f76400fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690955 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62577}
-
Andreas Haas authored
Update for a recent spec change: https://github.com/WebAssembly/reference-types/pull/38 R=binji@chromium.org Bug: v8:7581 Change-Id: I4ac4a4c351dfc100f978e1aead308cbed59149e4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690832Reviewed-by: Ben Smith <binji@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62576}
-
Ulan Degenbaev authored
This reverts commit 907f3a64. Reason for revert: speculative revert for v8:9445 I will reland if the crash is not fixed by the revert. Original change's description: > [heap] Replace ConcurrentSweepingState with a MemoryChunk local epoch counter. > > Bug: v8:9093 > Change-Id: I7c415fd0ea9e48f7ee189115f164825cb120695b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1624213 > Commit-Queue: Hannes Payer <hpayer@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62423} TBR=ulan@chromium.org,hpayer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9093, v8:9445 Change-Id: Ia81a52579dc0a89f57ee41c7d0f8b1ba0f9bba81 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1691025 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#62575}
-
Maciej Goszczycki authored
This change partially decouples the heap's allocation space numbering from the snapshot space encoding. This allows encoding read-only heap allocations when RO_SPACE is removed. A few pieces of src/snapshot also get cleaner as they no longer need to check for extraneous AllocationSpace values. Bug: v8:7464 Change-Id: I984c039b0e50e233209911ac3e655eb39be2551b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690956 Commit-Queue: Maciej Goszczycki <goszczycki@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#62574}
-
Ulan Degenbaev authored
This moves initialization of heap limits to one place: ConfigureHeap and also initializes the global limits there. Change-Id: I7ca76073680a97627a8b1da9a8310af003794a93 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1648259Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#62573}
-
Ben L. Titzer authored
This CL completely rearchitects the ownership of array buffer backing stores, consolidating ownership into a {BackingStore} C++ object that is tracked throughout V8 using unique_ptr and shared_ptr where appropriate. Overall, lifetime management is simpler and more explicit. The numerous ways that array buffers were initialized have been streamlined to one Attach() method on JSArrayBuffer. The array buffer tracker in the GC implementation now manages std::shared_ptr<BackingStore> pointers, and the construction and destruction of the BackingStore object itself handles the underlying page or embedder-allocated memory. The embedder API remains unchanged for now. We use the v8::ArrayBuffer::Contents struct to hide an additional shared_ptr to keep the backing store alive properly, even in the case of aliases from live heap objects. Thus the embedder has a lower chance of making a mistake. Long-term, we should move the embedder to a model where they manage backing stores using shared_ptr to an opaque backing store object. R=mlippautz@chromium.org BUG=v8:9380,v8:9221 Change-Id: I48fae5ac85dcf6172a83f252439e77e7c1a16ccd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1584323 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#62572}
-
Jakob Kummerow authored
Change-Id: I05bfc6eb98ea31b559d4195364e722ddf472afee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687677Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#62571}
-
Andreas Haas authored
R=mstarzinger@chromium.org Bug: v8:7581 Change-Id: Ie5372e37acf31cd20f7914423fe4c802b5903b95 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690944Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62570}
-
Clemens Hammacher authored
R=ahaas@chromium.org Bug: v8:9429, v8:9396 Change-Id: Ie6119ff58fdf48612d81fe0616986a4da95135d2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690836Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62569}
-
Peter Marshall authored
The client API provides a much simpler interface so that we don't have to deal with producers, consumers etc. directly. This CL removes all the code that dealt with the more complex API used previously. The architecture used here requires that the embedder call into Tracing::Initialize() to set up the tracing backend. The tracing controller then connects to this backend when calling DataSource::Register() and Tracing::NewTrace(). This will ultimately avoid the need for a virtual call (or two) for every trace event that need to be dispatched over the API - chrome can provide a backend and V8 will connect to it opaquely with the same code when tracing is enabled. Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Bug: v8:8339 Change-Id: I6b74fbb49ffcc89638caeb59ed3d5cc81238f3e8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1634916Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#62568}
-
Michael Starzinger authored
R=clemensh@chromium.org BUG=v8:9429,v8:9396 Change-Id: I35c6ef903e760ac3797ebe51722b4e6bccd4d105 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690945Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62567}
-
Ulan Degenbaev authored
This makes the heuristic for computing the number of parallel tasks in Scavenger consistent with that in Mark-Compactor. The patch helps mobile devices where even 1 MB new space can take 10ms to scavenge. Change-Id: I979de5e8485b93808ea079af2756f53d9b720e10 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1685612Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#62566}
-
Tamer Tas authored
Performance infra recipes use callstats.py to run web page replays. Split (v8, infa, perf-infra) repositories make experimenting with callstats.py hard. This CL creates feature gating for simplifying performance infra experiments. R=ulan@chromium.org No-Try: true Bug: v8:9448 Change-Id: I2c3e139f4b9d6bce1ea4fdda1a44960d74d7d414 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690950 Auto-Submit: Tamer Tas <tmrts@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Tamer Tas <tmrts@chromium.org> Cr-Commit-Position: refs/heads/master@{#62565}
-
Clemens Hammacher authored
This fixes the only violation of the 'runtime/references' warning in src/base by using a forwarding reference. R=mlippautz@chromium.org Bug: v8:9429, v8:9396 Change-Id: Ide2d28ab647e1cec78979c3f6d664b53c92a7d6e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690839 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#62564}
-
Andreas Haas authored
When I implemented these instructions, I copied the naming scheme of {GetGlobal}. That's not appropriate for the table.get instruction though, and I decided I suffered enough from that bad name now. R=clemensh@chromium.org Bug: v8:7581, v8:9396 Change-Id: Id1796425458f3d06a2da774374f02c49d665d2c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690835Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62563}
-
Peter Marshall authored
Change-Id: Iee9967b419fbb7cb7a20137a8325097ce9525ee1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690840Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#62562}
-
Clemens Hammacher authored
This removes two unneeded casts and an unused parameter. Note that according to the specification, {Allocator}s need to provide an {allocate} method receiving the size {n}, and *optionally* they can support {allocate} with a second pointer parameter which they can use in an unspecified manner. Since we do not use the second argument, we should just not provide that method. Drive-by: Remove else-after-return. R=mlippautz@chromium.org Bug: v8:9396 Change-Id: I776c5ae2f6652e20c9f9bfd511c41ce6ad1c1329 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690831 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#62561}
-
Simon Zünd authored
This is a reland of f24e9958 Speculatively relanding the CL. LLD ignores the added section, so the output should not be any different. The issue was also not reproducible locally. Keeping an eye on the bot/roll to quickly revert, in case this CL really breaks the deterministic build. Original change's description: > [snapshot] Add '.note.GNU-stack' marker section for ELF snapshots > > This snapshot adds a marker section to the output assembly of > mksnapshot. Omitting this section can imply an executable stack, which > can result in linker warnings. > > R=jgruber@chromium.org > > Change-Id: I6f5dacb24de3a852faf6ce0caf18c32b499ba5a9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687669 > Commit-Queue: Simon Zünd <szuend@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62504} TBR=jgruber@chromium.org Bug: chromium:981138 Change-Id: I2ddbaa7aa33f125ea0a0854cd9a94108c3a3845f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690825Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#62560}
-
Clemens Hammacher authored
This method is not specified as part of the Allocator requirement, as is deprecated on std::allocator since C++17. This also removes the only violation of the 'runtime/references' cpplint check in the zone directory. R=mlippautz@chromium.org Bug: v8:9429, v8:9396 Change-Id: I77c28afbf3c0e122c5ac27796b9f46b6c9455e61 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690830Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62559}
-
Georg Neis authored
Change-Id: Ie0f54dd36a7af9503306d756182d98fc2273b48a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690828 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#62558}
-
Santiago Aboy Solanes authored
This CL aims to address the regressions that we saw in Octane 2.1, particularly in the DeltaBlue test. This CL brings a 5% improvement in said test by doing CompressedSigned -> Word32 conversion (instead of CompressedSigned -> TaggedSigned -> Word32). There seems to be room for optimizations doing more specialized conversions regarding representation changes. 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:7703 Change-Id: I24e5b6c06436fdda9fa6a1ac4699dc55c3d67abd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1684075 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62557}
-
Clemens Hammacher authored
R=ahaas@chromium.org Bug: v8:9429, v8:9396 Change-Id: I79e5d707f6c3970c96eb2186604d8b26fda787e5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687897Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62556}
-
Michael Starzinger authored
This adds a test case for using constructed {WebAssembly.Function} objects in non-zero tables. Due to a recent refactoring that unifies handling of dispatch tables, this works out of the box. The test coverage however is still useful, since code paths are slightly different for non-zero tables. R=ahaas@chromium.org TEST=mjsunit/wasm/type-reflection-with-anyref BUG=v8:7742 Change-Id: I0cf4b0a8039bbef0422b06ee23744a949be8f1b1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690821 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62555}
-
Clemens Hammacher authored
R=ahaas@chromium.org Bug: v8:9429, v8:9396 Change-Id: I2a66142c04b2ec0e3ed57ea2392dda6d17d53b38 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687895 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62554}
-
Ross Kirsling authored
This is a reland of 89d93e38 Original change's description: > Reland "Let all early errors be SyntaxErrors." > > This is a reland of 99fd5b9b which includes a missed update to > test/test262/test262.status. > > Implement the spec change from the following TC39 PR: > https://github.com/tc39/ecma262/pull/1527 > > Bug: v8:9326 > Change-Id: Ie3aac60db550e90fb648fc30886a05419fa41afe > TBR: adamk@chromium.org > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1682989 > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62500} Bug: v8:9326 Change-Id: Ic30280400dfa5b83a4a397888e563eee479446c5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1688271Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#62553}
-
Clemens Hammacher authored
Due to a rebase, those annotations were missing in https://crrev.com/c/1687891. TBR=mlippautz@chromium.org Bug: v8:9429 Change-Id: I78ff2903dbbe1054499d4768e9ff5fb0c5f4b708 No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690826Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62552}
-
Clemens Hammacher authored
Cpplint usually checks for non-const reference arguments. They are forbidden in the style guide, and v8 does not explicitly make an exception here. This CL re-enables that warning, and fixes all current violations by adding an explicit "NOLINT(runtime/references)" comment. In follow-up CLs, we should aim to remove as many of them as possible. TBR=mlippautz@chromium.org Bug: v8:9429 Change-Id: If7054d0b366138b731972ed5d4e304b5ac8423bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687891Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62551}
-
Yutaka Hirano authored
Introduce the enum class to expand a boolean parameter in ErrorUtils::Construct. This is a preliminary change for error serialization: we want to create an error with the given stack string. Bug: chromium:970079 Change-Id: Ic55993d39d5d7b92197e2062a2be7cd8e87e552a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1689674Reviewed-by: Simon Zünd <szuend@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Yutaka Hirano <yhirano@chromium.org> Cr-Commit-Position: refs/heads/master@{#62550}
-
Simon Zünd authored
This CL mitigates the worst performance regressions for stack trace symbolization. The first fix is to hold the StackFrameBase instance in a local variable. The instance is produced by an iterator but newly created everytime FrameArrayIterator::Frame is called. The second fix is to skip symbolization of "MethodName" and "TypeName" for non-method calls. R=ulan@chromium.org Bug: chromium:981541,v8:8742 Change-Id: I58b2e0c87693c3914cf1946ce56341fbd4a797ac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1688927 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#62549}
-
Nico Hartmann authored
Feedback shall not be updated by the deoptimizer. Although this mechanism exists, it shall not be used if possible. This CL changes how V8 learns from BigInt deopts: Previously we updated feedback on the BinaryOperations in the deoptimizer, now we let the interpreter widen the feedback type from BigInt to Any after the deopt has occurred. Bug: v8:9407 Change-Id: I92e5e733085b433fd8ab452674d02404b81b2796 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687419Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@google.com> Cr-Commit-Position: refs/heads/master@{#62548}
-
Simon Zünd authored
This CL teaches the deoptimizer about JavaScriptBuiltinContinuation frames that are not preceded by argument adapter frames. This pattern is used when calling C++ API functions from TurboFan. This CL fixes a crash when the deoptimizer encounters the pattern described above. The crash was caused when the deoptimizer tried to read the arguments of the continuation frame. As no adapter frame was present, the argument count was read from the SharedFunctionInfo which had the kDontAdaptArgumentsSentinel value. This translated to an argument count of ~65000 later down the line, which caused a FATAL error when the deoptimizer tried to re-construct ~65000 non-existent values. Bug: chromium:980529 Change-Id: Id2de3bf7607102ab5a16de344c649015e968b185 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687417Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#62547}
-
Georg Neis authored
Change-Id: I9285052dfe21df8e0eaf0e0493458532f82504ae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687421Reviewed-by: Mythri Alle <mythria@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#62546}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/e10ba67..bd69e87 TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: I7a6ed22c9ff03cf3ccee1092a6a008527aa8bddb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690690Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#62545}
-
- 07 Jul, 2019 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7001f69..e10ba67 TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: I8363e4afe58742ae37fa5cb473772e2dbae36307 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1688007Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#62544}
-
- 06 Jul, 2019 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/2bdfcbd..7001f69 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/4303074..dd686e3 TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: I0a13e552cb4d7a20c25b230f5b03dfac22195111 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1688004Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#62543}
-
- 05 Jul, 2019 2 commits
-
-
Michael Achenbach authored
Bug: v8:9440 Change-Id: I0428ddbc26c06106fc504554f85c5f9c08871c18 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687418Reviewed-by: Maya Lekova <mslekova@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#62542}
-
Maya Lekova authored
Got rid of the following circular header dependency chains: compilation-dependencies <-> js-heap-broker <-> access-info types <-> js-heap-broker <-> access-info Extracted former CompilationDependencies::Dependency class into its own header. Extracted *Ref classes into their own header. This should enable building on older GCC versions, e.g. 5.4.0. Bug: v8:9440 Change-Id: Ia345bc227d8f7806d0b8622b706346a7ce6d01ea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687415 Commit-Queue: Maya Lekova <mslekova@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#62541}
-