- 22 Dec, 2017 16 commits
-
-
Bill Budge authored
- Adds overload to v8::Platform that will make it easier for embedders to maintain a reserve of address space for large, contiguous allocations. - Rewrites retry logic using loops. - Moves retry logic from some VirtualMemory allocation functions to AllocPages. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I52e66f9f8b15b6ce2a2f36e74783f178b8cd5cf7 Reviewed-on: https://chromium-review.googlesource.com/840724 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#50303}
-
Yang Guo authored
We collect instance type statistics in FatalProcessOutOfMemory into an array, which is allocated to the max instance type value. While we want to leave space to ensure new instance types do not affect constants in the API, we can be more frugal. We currently serialize 350 maps into the startup/context snapshot. Even if we assign a distinct instance type to each of these maps, we would still have more than enough to spare with this change. R=ulan@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I3e583c2c8da3342e9132d96046b5d80cd41afd72 Reviewed-on: https://chromium-review.googlesource.com/842542 Commit-Queue: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#50302}
-
Georg Neis authored
- Instantiation errors are no longer recorded. If instantiation fails, the module(s) are reset to "uninstantiated". When instantiation is re-attempted, the thrown exception will be fresh. - Instantiation can succeed even where there are modules in the graph that previously failed evaluation. Bug: v8:1569 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I429f616918afe5f8ab1a956024f0a22f464b8c44 Reviewed-on: https://chromium-review.googlesource.com/763369 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#50301}
-
Brad Nelson authored
R=eholk@chromium.org Bug: Change-Id: Ia099cf085510da50a87b9f999020d6a66d6eab20 Reviewed-on: https://chromium-review.googlesource.com/838250 Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#50300}
-
Andreas Haas authored
This is the implementation of crrev.com/c/766371 for mips64. Original description: Add the ability to return (multiple) return values on the stack: - Extend stack frames with a new buffer region for return slots. This region is located at the end of a caller's frame such that its slots can be indexed as caller frame slots in a callee (located beyond its parameters) and assigned return values. - Adjust stack frame constructon and deconstruction accordingly. - Extend linkage computation to support register plus stack returns. - Reserve return slots in caller frame when respective calls occur. - Introduce and generate architecture instructions ('peek') for reading back results from return slots in the caller. - Aggressive tests. - Some minor clean-up. R=v8-mips-ports@googlegroups.com Change-Id: Ia924f94367320b9062e33d35b58ccd38c8fc3ca3 Reviewed-on: https://chromium-review.googlesource.com/842483Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50299}
-
Daniel Clifford authored
May be causing breakage in browser tests preventing V8 roll TBR=bmeurer@chromium.org Change-Id: Ib1689c38ff250fc9454d2ea991c4808ddc5189de Reviewed-on: https://chromium-review.googlesource.com/842868Reviewed-by: Daniel Clifford <danno@chromium.org> Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Cr-Commit-Position: refs/heads/master@{#50298}
-
Sergiy Byelozyorov authored
TBR=sergiyb@chromium.org Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I0cc3a215862430a028e43e0749862729bda8973f Reviewed-on: https://chromium-review.googlesource.com/842869Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50297}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org No-Try: true Bug: chromium:797083 Change-Id: I6376f1bd652dd20fb44f551e029ce8b71eba7545 Reviewed-on: https://chromium-review.googlesource.com/842866 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50296}
-
Andreas Haas authored
TBR=bradnelson@chromium.org Change-Id: I133a1fd4135ac50182163c3632ba02fd806aa27a Reviewed-on: https://chromium-review.googlesource.com/843024Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50295}
-
Andreas Haas authored
Instead of these two instructions I generalize the kX64Peek instruction. R=bmeurer@chromium.org Change-Id: Ie5f8c7d428b65df3ca8b75594f6a06a75cc8e978 Reviewed-on: https://chromium-review.googlesource.com/839863 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50294}
-
Daniel Ehrenberg authored
This patch implements https://github.com/tc39/proposal-class-fields/pull/65 and https://github.com/tc39/proposal-static-class-features/ by splitting out instance and static field declarations into separate flags for the separate proposals. Instance class fields is currently at Stage 3 whereas static class fields is currently at Stage 2. Bug: v8:5367 Change-Id: I133c945fd0b22dc5718c7bb61b10f22348087acd Reviewed-on: https://chromium-review.googlesource.com/839778 Commit-Queue: Daniel Ehrenberg <littledan@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#50293}
-
Andreas Haas authored
Instead of these two instructions I generalize the kIA32Peek instruction. R=bmeurer@chromium.org Change-Id: I4bc48ac95dffd6e33de47a6aee9a13a1d64f78e0 Reviewed-on: https://chromium-review.googlesource.com/839766Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50292}
-
Andreas Haas authored
On 32-bit platforms, float64 stack returns take 2 stack slots. In the implemention of the kArmPeek instruction we assume that provided slot index points to the first stack slot. However, due to an off-by-1 issue the provided slot index pointed to the second stack slot. This CL fixes the problem and generalizes an existing test which reproduces it. R=v8-arm-ports@googlegroups.com Change-Id: Ibb2fd8275cf912da064e2f863c2d64d2526caaac Reviewed-on: https://chromium-review.googlesource.com/839761Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50291}
-
Yang Guo authored
Bug: chromium:797045 Change-Id: I21171f72c2989819bbc2f22ca9349fd972176095 Reviewed-on: https://chromium-review.googlesource.com/842482Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#50290}
-
Sigurd Schneider authored
This also adds speculative checks asserting that all arguments are of the right types; each check disables speculation if it fails. Bug: v8:7127, v8:6270 Change-Id: Ifcb8bc509b86c712f0fab50ef1caee0c3a289e86 Reviewed-on: https://chromium-review.googlesource.com/832449 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50289}
-
Mathias Bynens authored
For numbers, `JSGraph::Constant(Handle<Object> value)` first checks the type of `value`, and then calls `JSGraph::Constant` for its type, which in turn performs some further checks before returning a value. This patch saves a few `if` checks by making the following changes: - JSGraph::Constant(0) → JSGraph::ZeroConstant() - JSGraph::Constant(1) → JSGraph::OneConstant() Change-Id: I6946c280437b7f1fe80d7c45c6fd9b3571907e07 Reviewed-on: https://chromium-review.googlesource.com/840982Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#50288}
-
- 21 Dec, 2017 24 commits
-
-
Michael Achenbach authored
Prepared by: https://crrev.com/c/798412 Bug: v8:7120 Change-Id: I28a00f175673209e6d5f662e30a5448236e7a7c9 Reviewed-on: https://chromium-review.googlesource.com/800612 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#50287}
-
Michael Achenbach authored
https://build.chromium.org/p/client.v8/builders/V8%20Mac64/builds/19464 https://build.chromium.org/p/client.v8/builders/V8%20Mac64/builds/19539 NOTRY=true TBR=bbudge@chromium.org Bug: v8:5193 Change-Id: I4d6f73be30dfb1e563aa2f93c11651f739e0741b Reviewed-on: https://chromium-review.googlesource.com/833868Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50286}
-
Ulan Degenbaev authored
We have a heuristics that allows the main thread to skip marking work by the amount marked by the background tasks. Scavenges that happen during incremental marking can reclaim marked objects, which should be accounted in the main thread marking schedule. Bug: chromium:789530 Change-Id: I9b922e05202e3b7665ec191c4fe303dbe7f72a50 Reviewed-on: https://chromium-review.googlesource.com/840843 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#50285}
-
Caitlin Potter authored
NodeProperties::InferReceiverMaps now traverses effect chain for Loop-EffectPhi nodes, which makes it possible to inline `iterator.next()` within a loop when the next property is loaded outside of a loop. A new helper, GetInstanceTypeWitness(), performs InferReceiverMaps() and checks that each resulting map has an identical instance type. BUG=chromium:795632, v8:5940, v8:3018 R=bmeurer@chromium.org, jarin@chromium.org Change-Id: Id2690c224668bea62dbcad62ebc2bdf7e37e80d3 Reviewed-on: https://chromium-review.googlesource.com/837484 Commit-Queue: Caitlin Potter <caitp@igalia.com> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50284}
-
Daniel Clifford authored
Bug: v8:1956 Change-Id: I785986ed20e60e21966abe82a1567d239b22b416 Reviewed-on: https://chromium-review.googlesource.com/840026Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#50283}
-
Bill Budge authored
- Adds abstract base class PageAllocator, defined in v8-platform.h. Adds GetPageAllocator method to v8::Platform. - Implements a DefaultPageAllocator, implemented in terms of base::OS page allocation methods. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iece0b261a07294a49c30ac25e848dc39cb1a32e2 Reviewed-on: https://chromium-review.googlesource.com/809778 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#50282}
-
Michael Achenbach authored
Bug: v8:6917 Change-Id: Ica9b590d194da305416826eeed9f49963b8d97ca Reviewed-on: https://chromium-review.googlesource.com/839776Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50281}
-
Bill Budge authored
- Adds SetRandomMmapSeed method. - Removes random seed from OS::Initialize signature. Bug: chromium:756050 Change-Id: I46ef6a92efb8b97541b90383d08776dd73a35a0c Reviewed-on: https://chromium-review.googlesource.com/836907Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#50280}
-
Hannes Payer authored
Bug: chromium:796896 Change-Id: I4bfff3595455ff1fe1ca0d83d264ecef140c056e Reviewed-on: https://chromium-review.googlesource.com/839764 Commit-Queue: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#50279}
-
Sergiy Byelozyorov authored
TBR=sergiyb@chromium.org Bug: chromium:747960 Change-Id: Ic59a39dce3bd3c23cc3553ca6c7bfba142199f92 Reviewed-on: https://chromium-review.googlesource.com/839871 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50278}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org No-Try: true No-Presubmit: true Bug: chromium:747960 Change-Id: I0d2204af93b307ad186759cc7ff6c3c561889a70 Reviewed-on: https://chromium-review.googlesource.com/840022 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50277}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org No-Try: true Bug: chromium:747960 Change-Id: Id8f1992889f19144ce489ed6fc4858b3aea4e778 Reviewed-on: https://chromium-review.googlesource.com/840009Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50276}
-
Michal Majewski authored
All get outcome logic moved out from testsuite which makes output processors serializable. Output processors that are not global are stored inside testcase to share them with all test copies. Bug: v8:6917 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I625466b2b00565d885556f96cab03d8d16fa7ff4 Reviewed-on: https://chromium-review.googlesource.com/837069 Commit-Queue: Michał Majewski <majeski@google.com> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50275}
-
Clemens Hammacher authored
The wasm compile fuzzer now generates up to four functions with different signatures, and generates calls between them. R=ahaas@chromium.org CC=eholk@chromium.org Change-Id: I94903a80c78f8463dc1dee91ccf3be33c431e25a Reviewed-on: https://chromium-review.googlesource.com/839860 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50274}
-
Clemens Hammacher authored
I just fixed an annoying bug where I accidentally used DataRange more than once, leading to endless recursion. This CL avoids that by forbidding copying of DataRange. Instead, it's mostly passed by reference now. R=ahaas@chromium.org CC=eholk@chromium.org Change-Id: I3925548951645d13823ff42d9d833bde76d6cca6 Reviewed-on: https://chromium-review.googlesource.com/839762 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50273}
-
Andreas Haas authored
This is the implementation of crrev.com/c/766371 for mips. Original description: Add the ability to return (multiple) return values on the stack: - Extend stack frames with a new buffer region for return slots. This region is located at the end of a caller's frame such that its slots can be indexed as caller frame slots in a callee (located beyond its parameters) and assigned return values. - Adjust stack frame constructon and deconstruction accordingly. - Extend linkage computation to support register plus stack returns. - Reserve return slots in caller frame when respective calls occur. - Introduce and generate architecture instructions ('peek') for reading back results from return slots in the caller. - Aggressive tests. - Some minor clean-up. R=v8-mips-ports@googlegroups.com Change-Id: I2f30cc297771ec74b0b935b6ea28d3d61a986d5c Reviewed-on: https://chromium-review.googlesource.com/839660Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50272}
-
Michael Achenbach authored
NOTRY=true TBR=sergiyb@chromium.org Bug: chromium:788104 Change-Id: I3f47332a0f0df7a5a016afcb7d0904142176bea3 Reviewed-on: https://chromium-review.googlesource.com/839775Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#50271}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org No-Try: true Bug: chromium:747960 Change-Id: Idfce9232829581155c0abfda844b14fa6abbd7fb Reviewed-on: https://chromium-review.googlesource.com/839772Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50270}
-
Mike Stanton authored
Bug: Change-Id: I3185f0e88f0eef3d5a9b58a28cb6d103851da473 Reviewed-on: https://chromium-review.googlesource.com/839763 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#50269}
-
Michal Majewski authored
Bug: v8:6917 Change-Id: I51ec0be7ea961d3c81e03675cc65d03ecf526c3d Reviewed-on: https://chromium-review.googlesource.com/836988 Commit-Queue: Michał Majewski <majeski@google.com> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#50268}
-
Clemens Hammacher authored
Adds support for emitting the drop opcode in the wasm compile fuzzer. R=ahaas@chromium.org CC=eholk@chromium.org Change-Id: Idb6f07f3f50ffda472107bd6276221e803c37152 Reviewed-on: https://chromium-review.googlesource.com/839760 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50267}
-
Clemens Hammacher authored
Refactor out-of-line code to represent either traps or stack checks, and add function-entry stack checks. R=ahaas@chromium.org Bug: v8:6600 Change-Id: I467ccc2016f67da5562a576aeaeceba002cd04ca Reviewed-on: https://chromium-review.googlesource.com/834208 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#50266}
-
peterwmwong authored
Fixes a regression causing a seg fault instead of the expected stack overflow. Bug: chromium:796427, v8:6005 Change-Id: Ifc752a4009a25f447f5e87745dcc1bb83722c34e Reviewed-on: https://chromium-review.googlesource.com/838854 Commit-Queue: Peter Wong <peter.wm.wong@gmail.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#50265}
-
Stephan Herhut authored
Bug: Change-Id: I785dd2fb839f8388e7389f4fe935cb983f6e81eb Reviewed-on: https://chromium-review.googlesource.com/803435Reviewed-by: Daniel Clifford <danno@chromium.org> Commit-Queue: Stephan Herhut <herhut@google.com> Cr-Commit-Position: refs/heads/master@{#50264}
-