- 11 Oct, 2017 38 commits
-
-
Jakob Kummerow authored
This CL teaches the respective bytecode handlers and standalone stubs about BigInts, and collects "kBigInt" type feedback for them. Just like for other binary ops, that feedback is converted to "any" for TurboFan for now. Bug: v8:6791 Change-Id: I0709cc77dc248dad506207c7b35b63c80b1ef96a Reviewed-on: https://chromium-review.googlesource.com/699424Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48471}
-
Leszek Swirski authored
AST printing was printing the literal of the ParseInfo, which is the current function being parsed. However, for eager compilation of inner literals, this may not be the function being compiled, which is in the CompilationInfo. So, for --print-ast, we have to get the FunctionLiteral from CompilationInfo. Bug: chromium:771653 Change-Id: I2088e1f1f7b8a3d664aae65cab699a641e5fd302 Reviewed-on: https://chromium-review.googlesource.com/712354Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#48470}
-
Tobias Tebbi authored
This fixes the issues https://bugs.chromium.org/p/chromium/issues/detail?id=772873 and https://bugs.chromium.org/p/chromium/issues/detail?id=772872. One problem was that mutating an effect node into Unreachable confused the LoadElimination sidetables, so I just always create a new node now. The other problem was that UpdateBlockControl() was executed after UpdateEffectPhi() in the lazy case. This reverted the update to the Merge input. So now I make sure that UpdateEffectPhi() is always executed last. This is a reland of 6ddb5e7d Original change's description: > Reland^2 "[turbofan] eagerly prune None types and deadness from the graph" > > Now, the EffectControlLinearizer connects all occurrences of Unreachable to the > graph end. This fixes issues with later phases running DeadCodeElimination and > introducing new DeadValue nodes when processing uses of Unreachable. > > This is a reland of 3c4bc27f > Original change's description: > > Reland "[turbofan] eagerly prune None types and deadness from the graph" > > > > This is a reland of e1cdda25 > > Original change's description: > > > [turbofan] eagerly prune None types and deadness from the graph > > > > > > In addition to using the {Dead} node to prune dead control nodes and nodes that > > > depend on them, we introduce a {DeadValue} node representing an impossible value > > > that can occur at any position in the graph. The extended {DeadCodeElimination} > > > prunes {DeadValue} and its uses, inserting a crashing {Unreachable} node into > > > the effect chain when possible. The remaining uses of {DeadValue} are handled > > > in {EffectControlLinearizer}, where we always have access to the effect chain. > > > In addition to explicitly introduced {DeadValue} nodes, we consider any value use > > > of a node with type {None} as dead. > > > > > > Bug: chromium:741225 > > > Change-Id: Icc4b636d1d018c452ba1a2fa7cd3e00e522f1655 > > > Reviewed-on: https://chromium-review.googlesource.com/641250 > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#48208} > > > > Bug: chromium:741225 > > Change-Id: I21316913dae02864f7a6d7c9269405a79f054138 > > Reviewed-on: https://chromium-review.googlesource.com/692034 > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#48232} > > Bug: chromium:741225 > Change-Id: I5702ec34856c075717162153adc765774453c45f > Reviewed-on: https://chromium-review.googlesource.com/702264 > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48366} Bug: chromium:741225 Change-Id: I4054a694d2521c2e1f0c4a3ad0f3cf100b5c536f Reviewed-on: https://chromium-review.googlesource.com/709214 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#48469}
-
Jan Krems authored
This is a reland of ed6f00fb Original change's description: > [modules] Implement import.meta proposal > > Rewrites references to import.meta to a new GetImportMetaObject runtime > call. Embedders can define a callback for creating the meta object using > v8::Isolate::SetHostGetImportMetaObjectCallback. If no callback has been > provided, an empty object with null prototype is created. > > This adds an example implementation to d8 that sets meta.url. > > Bug: v8:6693 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I6871eec79da45bba81bbbc84b1ffff48534c368d > Reviewed-on: https://chromium-review.googlesource.com/707902 > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48433} TBR=adamk@chromium.org Bug: v8:6693 Change-Id: Ie2d746ad996a56ed6ff50b832f320fe44e02f231 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/712834Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#48468}
-
Michael Achenbach authored
Bug: v8:6917 Change-Id: I3889cd0d059c3473a7b83eb298734a7a6a8a1de5 Reviewed-on: https://chromium-review.googlesource.com/712175Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48467}
-
Eric Holk authored
This reverts commit b0ced926. Reason for revert: Build breakage - https://build.chromium.org/p/client.v8/builders/V8%20Linux/builds/20832 Original change's description: > Track committed array buffer size rather than allocation length > > WebAssembly creates ArrayBuffers with large allocations where only a small > amount is committed. The uncommitted address space should not be counted as used > memory. Doing so can lead to the GC spending unnecessary time collecting memory > when there is not really pressure. > > Bug: > Change-Id: Ife7b84e9858e87faabc360a61f887b2fda6d99db > Reviewed-on: https://chromium-review.googlesource.com/710227 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Eric Holk <eholk@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48462} TBR=mlippautz@chromium.org,eholk@chromium.org Change-Id: Ib7b28a7bbc8ffc11e0bf8c4bb16b2da61cbdbd5f No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/712835Reviewed-by: Eric Holk <eholk@chromium.org> Commit-Queue: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#48466}
-
Georgia Kouveli authored
Adds some necessary padding to ensure the frame is 16-byte aligned. We don't yet consider the bailout state, which will be handled separately. This patch also improves the code generated for ContinueTo*Builtin* stubs. Finally, it adds a test that checks the return value for Array.map in the case where a LAZY deopt results in a topmost builtin continuation frame - this is easy to break if the padding for the result is done incorrectly in NotifyBuiltinContinuation, but was not detected by existing tests. Bug: v8:6644 Change-Id: Id1a294950cdf535e2bfdb0ed27c67f077ec34f8a Reviewed-on: https://chromium-review.googlesource.com/704835 Commit-Queue: Georgia Kouveli <georgia.kouveli@arm.com> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#48465}
-
Clemens Hammacher authored
Instead of using the size of the whole code object, just use the size of the instructions, because only there faults can happen. R=eholk@chromium.org Bug: v8:5277 Change-Id: Ia5768891ec3c1ee5ad8affc9486e044d79e23146 Reviewed-on: https://chromium-review.googlesource.com/712536Reviewed-by: Eric Holk <eholk@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#48464}
-
Andreas Rossberg authored
Only change over original: Init sig_index to 0 at function-body-decoder-impl.h:168, to make MSAN happy on error path. R=titzer@chromium.org Change-Id: I9ac17215360523b656b10d2466201001b65992c0 Reviewed-on: https://chromium-review.googlesource.com/712655Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Andreas Rossberg <rossberg@chromium.org> Cr-Commit-Position: refs/heads/master@{#48463}
-
Eric Holk authored
WebAssembly creates ArrayBuffers with large allocations where only a small amount is committed. The uncommitted address space should not be counted as used memory. Doing so can lead to the GC spending unnecessary time collecting memory when there is not really pressure. Bug: Change-Id: Ife7b84e9858e87faabc360a61f887b2fda6d99db Reviewed-on: https://chromium-review.googlesource.com/710227Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#48462}
-
Michael Achenbach authored
Prepared by: https://chromium-review.googlesource.com/c/chromium/tools/build/+/712036 Bug: chromium:772804 Change-Id: Ib6ace7510962e5f00008c2f2c5f87f339363d995 Reviewed-on: https://chromium-review.googlesource.com/708258Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48461}
-
Michael Achenbach authored
Currently it's hard to reason about the hung tests on worker processes. This adds simple output when we're trying to kill a hung process. Change-Id: Iae5e14dac70a8149c074043dd00cbf10e4d5f3de Reviewed-on: https://chromium-review.googlesource.com/712455Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48460}
-
Pierre Langlois authored
This patch is a first step towards target independent tests for the CodeGenerator's AssembleMove and AssembleSwap methods. The tests on top of which this builds would only make sure that no assertions were triggered while generating moves, and that the hardware is happy executing them. We want to do more and check that the generated code performs correctly. In a nutshell, this introduces a facility that can do the following: - Setup an environment with registers and stack slots initialised with random values. - Perform a list of randomly generated moves and/or swaps on those. - Return the resulting environment. This is a first step and therefore is lacking a few things which will be implemented as follow-ups: - Support for kSimd128 moves and swaps. - Support large offsets for stack moves, as well as positive and negative. - Compare the resulting environment against the result of a reference simulation. For more background information, see this design document: https://docs.google.com/document/d/1KpioxCmtiB_9RaPaRidZPVtKlZ2BaNKGPYUjKFihhK0 Bug: v8:6848 Change-Id: Ie7dc837f4444df010ab58c64b722d40ee5d2af72 Reviewed-on: https://chromium-review.googlesource.com/677398Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Pierre Langlois <pierre.langlois@arm.com> Cr-Commit-Position: refs/heads/master@{#48459}
-
Ulan Degenbaev authored
The optimization keeps dying maps alive for several GCs to mitigate code deoptimization with weak maps. This patch disables the optimization to see if it still needed. Bug: Change-Id: Ie5717967ad56858e6ae546c90fde73e8d5bcc4ec Reviewed-on: https://chromium-review.googlesource.com/712598Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48458}
-
Ben L. Titzer authored
R=clemensh@chromium.org Bug: Change-Id: I54e4d02cd5665d3ba3fd2e91da05599a915c0317 Reviewed-on: https://chromium-review.googlesource.com/712654Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#48457}
-
Michael Lippautz authored
Bug: Change-Id: Id3373279f2d985f7899cf893c1f63692b97166b7 Reviewed-on: https://chromium-review.googlesource.com/704655 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48456}
-
Michael Achenbach authored
This reverts commit e44fdc70. Reason for revert: Breaks msan: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20arm64%20-%20sim%20-%20MSAN/builds/17482 Original change's description: > [wasm] [multival] Allow function types as block types > > Changes the binary encoding of multi-return blocks to contain a function type index instead of a vector of value types. > > Cf. https://github.com/WebAssembly/multi-value/blob/master/proposals/multi-value/Overview.md#binary-format > > Bug: v8:6672 > Change-Id: I506d9323bfd6dba1e7a24c8590bcf5a08b68c433 > Reviewed-on: https://chromium-review.googlesource.com/599807 > Reviewed-by: Ben Titzer <titzer@chromium.org> > Commit-Queue: Andreas Rossberg <rossberg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48453} TBR=titzer@chromium.org,rossberg@chromium.org Change-Id: Ia711d16ec6bd1c0731a96d38b8661f05be71f64b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6672 Reviewed-on: https://chromium-review.googlesource.com/712634Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48455}
-
Ulan Degenbaev authored
The concurrent marker visits arrays with fast SMI elements because they have the same visitor id as arrays with tagged elements. Visiting concurrently with memmove can be unsafe depending on memmove implementation. Bug: chromium:694255 Change-Id: Ic6c2cae8761e5b1b042e4274d4f90ac59f32d91f Reviewed-on: https://chromium-review.googlesource.com/712158 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#48454}
-
Andreas Rossberg authored
Changes the binary encoding of multi-return blocks to contain a function type index instead of a vector of value types. Cf. https://github.com/WebAssembly/multi-value/blob/master/proposals/multi-value/Overview.md#binary-format Bug: v8:6672 Change-Id: I506d9323bfd6dba1e7a24c8590bcf5a08b68c433 Reviewed-on: https://chromium-review.googlesource.com/599807Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Andreas Rossberg <rossberg@chromium.org> Cr-Commit-Position: refs/heads/master@{#48453}
-
peterwmwong authored
- Expose fast paths for RegExpPrototypeMatchBody/RegExpPrototypeSearchBody as TFS builtins - Add StringPrototypeMatch and StringPrototypeSearch TFJ builtins - Add StringMatchSearchAssembler to ensure same search/match behavior - Remove functionality from string.js A quick benchmark shows gains of 20-30% for unoptimized code and 0-20% for optimized code. https://github.com/peterwmwong/v8-perf/blob/master/string-search-match/README.md Bug: v8:5049 Change-Id: I0fffee6e94e62ecae049c9e5798da52d67ae1823 Reviewed-on: https://chromium-review.googlesource.com/707824 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#48452}
-
Ulan Degenbaev authored
NOTREECHECKS=true NOTRY=true Bug: chromium:773631 Change-Id: I2ef5636d7ba3f2194ede6a057027bfcacda089c0 Reviewed-on: https://chromium-review.googlesource.com/712155 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48451}
-
Camillo Bruni authored
Change-Id: I3d88cae4d4b74a091c776cb9a822d639ddb1e401 Reviewed-on: https://chromium-review.googlesource.com/712041Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#48450}
-
Martyn Capewell authored
This is a reland of 7c80f9ce with fixed restore of system stack pointer in the tests. Original change's description: > Abstract some stack slot copies through a macro assembler function. This > eliminates some non-paired stack operations. > > This is a reland of 1cc93be0 with > additional tests, originally reviewed on > https://chromium-review.googlesource.com/685238 and reverted due to an > unrelated intermittent x64 failure. > > Bug: v8:6644 > Change-Id: If22b359dbda4bab1cb83cd8c44a2af5801012c37 > Reviewed-on: https://chromium-review.googlesource.com/707247 > Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> > Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> > Cr-Commit-Position: refs/heads/master@{#48419} Bug: v8:6644 Change-Id: Ie8b45c73acc13df36c978a9ae4bee77082cb7c8d Reviewed-on: https://chromium-review.googlesource.com/709515Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#48449}
-
Ulan Degenbaev authored
Bug: v8:6915, chromium:694255 Change-Id: I16cd8f13087476a16c7647bec3d03665299ef232 Reviewed-on: https://chromium-review.googlesource.com/712044 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#48448}
-
Michael Lippautz authored
Bug: Change-Id: Ifc7e6dd429b18793fc6f91ce5f01a534d8437df6 Reviewed-on: https://chromium-review.googlesource.com/711853Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#48447}
-
Leszek Swirski authored
Bug: chromium:770530 Change-Id: I48f4c6968a34e0dce99f72e56302de81bf0f1991 Reviewed-on: https://chromium-review.googlesource.com/709597 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Cr-Commit-Position: refs/heads/master@{#48446}
-
Tobias Tebbi authored
Constructor inheritance of a templated constructor is causing compilation issues for node.js: https: //github.com/nodejs/node/pull/15362#issue-257007421 Change-Id: I7d099ff5a1a2fd5b19c11112ddef8fe824e509f7 Reviewed-on: https://chromium-review.googlesource.com/707008 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#48445}
-
Michal Majewski authored
Skipped the tests that are not suitable for deoptimization fuzzing. regress/regress-2618 test fixed to check kMaybeDeopted flag. Minor code style fix in mjsunit.js. Bug: v8:6900 Change-Id: Icc02a6b99005ae08ee7cb6cf2c1e9137329d79d3 Reviewed-on: https://chromium-review.googlesource.com/708797 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48444}
-
Michael Achenbach authored
TBR=sergiyb@chromium.org Bug: chromium:772816 Change-Id: I40014d381637394057b0646740a2487fef5fe8a6 Reviewed-on: https://chromium-review.googlesource.com/711841Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48443}
-
Ulan Degenbaev authored
This is a reland of f3c8da56 Original change's description: > [heap] Use weak cell in normalized map cache. > > This replaces ad-hoc weakness in normalized map cache with weak cell. > > Bug: chromium:694255 > Change-Id: I6a12301b2176fe3723b56178a65582cfb412f7d2 > Reviewed-on: https://chromium-review.googlesource.com/704834 > Commit-Queue: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48344} Bug: chromium:694255 Change-Id: I181a9c02cc934373e40455f1be02f1caf140639b Reviewed-on: https://chromium-review.googlesource.com/709354Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#48442}
-
Michael Achenbach authored
Bug: chromium:773214 Change-Id: I7ebcbea3152a506e3ed569ef975413321c937dc6 Reviewed-on: https://chromium-review.googlesource.com/708755Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48441}
-
Georg Neis authored
This introduces a ToNumeric conversion to the runtime and interpreter. ToNumeric behaves like ToNumber, except that it also lets BigInts pass. Bug: v8:6791 Change-Id: Idf9d0b5d283638459fe5893de41cc120356247a7 Reviewed-on: https://chromium-review.googlesource.com/707013 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#48440}
-
Michael Achenbach authored
Bug: v8:6566 Change-Id: If48fea99f2b1c8069dd20075bf4d9a6c6282bb7c Reviewed-on: https://chromium-review.googlesource.com/708757Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48439}
-
Michael Achenbach authored
Infra side: https://chromium-review.googlesource.com/c/chromium/tools/build/+/708739 NOTRY=true Bug: chromium:772816 Change-Id: I256807182f52aad4e56684bad607aea1b7dc6c29 Reviewed-on: https://chromium-review.googlesource.com/708758Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48438}
-
Jaroslav Sevcik authored
When starting profiling, we iterate the heap to find all existing code objects and the associated functions. The iteration tried to log the function's code if either the closure's code was optimized-but-not-deoptimized or if the optimized code in its feedback vector was optimized-but-not-deoptimized. That caused some trouble if the function's code was deoptimized but we had a valid optimized code in the feedback vector. In that case we would log the deoptimized code object from the closure, which would later crash when trying to access the deoptimization information (which we clear on deoptimization). This CL just fixes the iteration so that we do not crash. A better fix might be to log the function's code object if not deoptimized *and* the code object in type feedback vector if not not deoptimized. Or perhaps iterate optimized code objects and log those that have deoptimization information. Bug: chromium:763073 Change-Id: Iddee6a1c8b0fe332186ef7af2f3751c8828434b1 Reviewed-on: https://chromium-review.googlesource.com/709116Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#48437}
-
Michael Achenbach authored
This reverts commit cc237d87. Reason for revert: breaks win clang: https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20clang/builds/8538 Original change's description: > Reland "[wasm] trap handlers: fall back on old signal handler" > > This is a reland of ee4fe896 > Original change's description: > > [wasm] trap handlers: fall back on old signal handler > > > > This is primarily needed to test D8 under ASan. ASan installs a signal handler > > early in the process startup to show stack traces from crashes. We need to make > > sure that if V8 does not handle a signal then the existing handler gets a > > chance. > > > > This change only applies when using V8's default signal handler. When > > integrating with the embedder's signal handler the behavior is unchanged. > > > > Bug: chromium:771948 > > Change-Id: Ifd560acf9700ec5f714f009530258fa92c83cabe > > Reviewed-on: https://chromium-review.googlesource.com/705823 > > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > > Commit-Queue: Eric Holk <eholk@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#48429} > > Bug: chromium:771948 > Change-Id: Ide307091c432fd933c48f89c51851b8dce44dd30 > Reviewed-on: https://chromium-review.googlesource.com/710114 > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Eric Holk <eholk@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48435} TBR=mseaborn@chromium.org,bradnelson@chromium.org,gdeepti@chromium.org,eholk@chromium.org,mark@chromium.org Change-Id: If71f61ae186fc6be2006edeb2dffd7e2b6827d91 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:771948 Reviewed-on: https://chromium-review.googlesource.com/711854Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#48436}
-
Eric Holk authored
This is a reland of ee4fe896 Original change's description: > [wasm] trap handlers: fall back on old signal handler > > This is primarily needed to test D8 under ASan. ASan installs a signal handler > early in the process startup to show stack traces from crashes. We need to make > sure that if V8 does not handle a signal then the existing handler gets a > chance. > > This change only applies when using V8's default signal handler. When > integrating with the embedder's signal handler the behavior is unchanged. > > Bug: chromium:771948 > Change-Id: Ifd560acf9700ec5f714f009530258fa92c83cabe > Reviewed-on: https://chromium-review.googlesource.com/705823 > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Eric Holk <eholk@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48429} Bug: chromium:771948 Change-Id: Ide307091c432fd933c48f89c51851b8dce44dd30 Reviewed-on: https://chromium-review.googlesource.com/710114Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#48435}
-
Sathya Gunasekaran authored
This reverts commit ed6f00fb. Reason for revert: tree is broken NOTRY=true NOTREECHECKS=true Original change's description: > [modules] Implement import.meta proposal > > Rewrites references to import.meta to a new GetImportMetaObject runtime > call. Embedders can define a callback for creating the meta object using > v8::Isolate::SetHostGetImportMetaObjectCallback. If no callback has been > provided, an empty object with null prototype is created. > > This adds an example implementation to d8 that sets meta.url. > > Bug: v8:6693 > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I6871eec79da45bba81bbbc84b1ffff48534c368d > Reviewed-on: https://chromium-review.googlesource.com/707902 > Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> > Reviewed-by: Adam Klein <adamk@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#48433} TBR=adamk@chromium.org,gsathya@chromium.org,jan.krems@groupon.com Change-Id: I908a508d5db84cc8ae60d4fd4a0446bb570c1492 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6693 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/710760Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#48434}
-
- 10 Oct, 2017 2 commits
-
-
Jan Krems authored
Rewrites references to import.meta to a new GetImportMetaObject runtime call. Embedders can define a callback for creating the meta object using v8::Isolate::SetHostGetImportMetaObjectCallback. If no callback has been provided, an empty object with null prototype is created. This adds an example implementation to d8 that sets meta.url. Bug: v8:6693 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I6871eec79da45bba81bbbc84b1ffff48534c368d Reviewed-on: https://chromium-review.googlesource.com/707902 Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#48433}
-
Ulan Degenbaev authored
String with pointers should use snapshotting protocol because they can be externalized concurrently. Sequential strings can be turned into thin strings, so we need to cache the length and synchronized of markbits. No-Try: true Bug: v8:6915, chromium:694255 Change-Id: Ibd1f0ead31544f56aa9de9a177bee7e60fbc2e6a Reviewed-on: https://chromium-review.googlesource.com/708761 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#48432}
-