- 17 Nov, 2017 20 commits
-
-
Clemens Hammacher authored
Add methods to add deoptimization data and use them from all the places where we currently add them manually. Also add them to wasm-to-wasm wrappers compiled on table set, which was missing before, leading to the referenced bug. Drive-by: Disable non-applicable MaybeHandle constructors to allow overloading functions with different Handle types. R=ahaas@chromium.org Bug: chromium:779292 Change-Id: Ib9132d9faeb1092c46e22dd8196d201ce5c0942f Reviewed-on: https://chromium-review.googlesource.com/774838Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#49452}
-
Jakob Gruber authored
This test iterates all builtin objects; explicitly deserialize builtins when necessary to avoid verifying DeserializeLazy by accident. Bug: v8:6624 Change-Id: Iab3f708380809b7486ef11a2816e9593ee7e65cd Reviewed-on: https://chromium-review.googlesource.com/654902 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49451}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org Bug: chromium:748057 No-Try: true Change-Id: I20a74823678510f343c865b074b2d088c1080b94 Reviewed-on: https://chromium-review.googlesource.com/776719 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#49450}
-
Bill Budge authored
- Warn on unused result for OS Allocate, Free, SetPermissions, CommitRegion, UncommitRegion functions. - Adds CHECKS or DCHECK/USE around call sites. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ic00b0a42a1e09bdba013b7fa2b1b4e2b7591bac6 Reviewed-on: https://chromium-review.googlesource.com/769792Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#49449}
-
Sergiy Byelozyorov authored
R=machenbach@chromium.org Bug: chromium:748057 Change-Id: I013bae778c3cc1ccf545d33bf99aadb42ad49834 Reviewed-on: https://chromium-review.googlesource.com/775122 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49448}
-
Michael Achenbach authored
This reverts commit acfef3ec. Reason for revert: Makes logmaps timeout in nosnap mode: https://build.chromium.org/p/client.v8/builders/V8%20Linux%20-%20nosnap/builds/18933 Original change's description: > [log] Properly log all maps creating during bootstrapping > > Logger::LogMaps will print all maps currently present on the heap. > > Note that currently this does not properly log the detailed transitions > for these maps. > > Change-Id: Ia3218d371549d7634fe3eda9e8e59b0b0bd8bebb > Reviewed-on: https://chromium-review.googlesource.com/753885 > Reviewed-by: Yang Guo <yangguo@chromium.org> > Commit-Queue: Camillo Bruni <cbruni@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49444} TBR=yangguo@chromium.org,cbruni@chromium.org Change-Id: I264362552cbc2f8f0c1df84412f4dbeea08ef384 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/776815Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49447}
-
Ulan Degenbaev authored
Bug: Change-Id: Ide7fab96e5ba1650aa17ba266e6ed2ed893208d7 Reviewed-on: https://chromium-review.googlesource.com/776658Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#49446}
-
Leszek Swirski authored
Since we only ever have preparsed scope info data for functions that haven't been parsed yet, it never overlaps with there being other function data (such as a bytecode array). So, we can merge the two fields. This drops the SharedFunctionInfo size by one pointer. Bug: chromium:783853 Change-Id: I7166010271cf661b04d3d118ac87c65c79555f96 Reviewed-on: https://chromium-review.googlesource.com/774863Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Marja Hölttä <marja@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#49445}
-
Camillo Bruni authored
Logger::LogMaps will print all maps currently present on the heap. Note that currently this does not properly log the detailed transitions for these maps. Change-Id: Ia3218d371549d7634fe3eda9e8e59b0b0bd8bebb Reviewed-on: https://chromium-review.googlesource.com/753885Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#49444}
-
Predrag Rudic authored
This test uses 136GB of memory which is too much for our MIPS boards. NOTRY=true Bug: v8:7093 Change-Id: I382bf0832da6ae74241e89a2016c3738f03979fd Reviewed-on: https://chromium-review.googlesource.com/776765Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49443}
-
Michael Starzinger authored
This removes support for optimized frame which lack deoptimization information. All optimized JavaScript frames now imply that the underlying bytecode is available too. R=rmcilroy@chromium.org BUG=v8:6409 Change-Id: Ie73c0a376002466884388f1da9e1ec2741884596 Reviewed-on: https://chromium-review.googlesource.com/612162 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#49442}
-
Clemens Hammacher authored
This reverts commit 3e0bf580. Reason for revert: MSVC does not compile any more, see https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/172 Original change's description: > MIPS[64] Implementation of MSA instructions in builtin simulator > > This commit is a step toward enabling test-run-wasm-simd tests for MIPS. > 36 of those were failing in V8 builtin simulator because some instructions > were not implemented. Also there are minor fixes to some of the already > implemented instructions. > > This commit has only 32-bit implementation. After review I will add > 64-bit version. > > Bug: > Change-Id: I25b0cac352db3efb56b922ace64ab2aaef82472d > Reviewed-on: https://chromium-review.googlesource.com/744008 > Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> > Cr-Commit-Position: refs/heads/master@{#49439} TBR=jkummerow@chromium.org,mstarzinger@chromium.org,mlippautz@chromium.org,bmeurer@chromium.org,predrag.rudic@mips.com,ivica.bogosavljevic@mips.com,Ilija.Pavlovic@mips.com,sreten.kovacevic@mips.com,Miran.Karic@imgtec.com Change-Id: Ic0c6339473481fa75908e942bc86de2b5c6349d8 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/776655Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#49441}
-
Clemens Hammacher authored
std::is_base_of<A, B> has undefined behaviour if B is not a complete type. Hence, avoid it and use is_convertible<B*, A*> instead. This captures exactly the requirement that Handle<A> foo() { return produce<Handle<B>>(); } is valid exactly if A* foo() { return produce<B>(); } is valid. Also, change some static asserts to enable_ifs in order to allow overloading a function by different Handle types, which would cause disambiguity otherwise. R=tebbi@chromium.org Change-Id: I60fbdfcfd96c7b216e42819a5b5de3423a2c38d0 Reviewed-on: https://chromium-review.googlesource.com/774841Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#49440}
-
Predrag Rudic authored
This commit is a step toward enabling test-run-wasm-simd tests for MIPS. 36 of those were failing in V8 builtin simulator because some instructions were not implemented. Also there are minor fixes to some of the already implemented instructions. This commit has only 32-bit implementation. After review I will add 64-bit version. Bug: Change-Id: I25b0cac352db3efb56b922ace64ab2aaef82472d Reviewed-on: https://chromium-review.googlesource.com/744008Reviewed-by: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#49439}
-
Ivo Markovic authored
Added return value registers on both MIPS32 and MIPS 64. Bug: Change-Id: I3199a73f90ef7b0bc9e18d716fcdf4c8c479f7fd Reviewed-on: https://chromium-review.googlesource.com/774286Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#49438}
-
Tom Anderson authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/98bbbff..5698e23 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/93a751e..3196d83 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/755a485..fd88dfb Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/4b58512..e70074d R=machenbach@chromium.org Change-Id: If3f0ca871fbcf5e46876d2dab00b034dc496f91c Bug: Reviewed-on: https://chromium-review.googlesource.com/775632Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49437}
-
Michael Achenbach authored
This reverts commit 01f670d8. Reason for revert: https://crbug.com/785170 Original change's description: > Update V8 DEPS. > > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/98bbbff..610a818 > > Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/93a751e..9c40f80 > > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/755a485..1087227 > > Rolling v8/third_party/instrumented_libraries: https://chromium.googlesource.com/chromium/src/third_party/instrumented_libraries/+log/e07d437..7f70365 > > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/4b58512..c2f2e01 > > TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org > > Change-Id: Ic9902f605333991c0d33f91f22dca32763a7f21d > Reviewed-on: https://chromium-review.googlesource.com/775835 > Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> > Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49435} TBR=v8-autoroll@chromium.org,machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I9c0a5c9130a59dbdc45648062c1ed7d470ee7b13 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/776593Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49436}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/98bbbff..610a818 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/93a751e..9c40f80 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/755a485..1087227 Rolling v8/third_party/instrumented_libraries: https://chromium.googlesource.com/chromium/src/third_party/instrumented_libraries/+log/e07d437..7f70365 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/4b58512..c2f2e01 TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ic9902f605333991c0d33f91f22dca32763a7f21d Reviewed-on: https://chromium-review.googlesource.com/775835Reviewed-by: v8 autoroll <v8-autoroll@chromium.org> Commit-Queue: v8 autoroll <v8-autoroll@chromium.org> Cr-Commit-Position: refs/heads/master@{#49435}
-
Adam Klein authored
It was shipped in Chrome 62. Bug: v8:5070 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I77119540411d1fe15691d40012cb96f4e2e45048 Reviewed-on: https://chromium-review.googlesource.com/776154Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#49434}
-
Jakob Kummerow authored
"AbsoluteDivSmall" had a shortcut path for abs(divisor) == 1 where it would simply return the dividend as result. However, its caller "Divide" was blissfully ignorant of this trick and would therefore simply set the value's sign as needed, modifying the input. This CL prevents that, while continuing to avoid the full division algorithm for abs(divisor) == 1. Bug: v8:6791 Change-Id: I04cdc93f5ed2a696587c35c754e68f07012dd1a9 Reviewed-on: https://chromium-review.googlesource.com/772332 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#49433}
-
- 16 Nov, 2017 20 commits
-
-
Michael Achenbach authored
This reverts commit b8092f43. Reason for revert: Seems to crash all tests on arm debug: https://chromium-swarm.appspot.com/task?id=39df3b647e100a10&refresh=10&show_raw=1 Original change's description: > Remove no_custom_libcxx and update V8 DEPS. > > Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/98bbbff..5698e23 > > Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/93a751e..9c40f80 > > Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/755a485..fd88dfb > > Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/4b58512..e70074d > > R=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org > > Change-Id: I659fc77cdada9b96c42b9b7ea86766b47b6f8352 > Reviewed-on: https://chromium-review.googlesource.com/775320 > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49428} TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org,thomasanderson@chromium.org Change-Id: I9a6210bfdea9ad0d0a344a97bf0ce63d13e90288 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/775159Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49432}
-
Brad Nelson authored
BUG=v8:7068 R=kschimpf@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Iaf29d3696094722853fb67b29c697860752e256e Reviewed-on: https://chromium-review.googlesource.com/763995 Commit-Queue: Eric Holk <eholk@chromium.org> Reviewed-by: Eric Holk <eholk@chromium.org> Cr-Commit-Position: refs/heads/master@{#49431}
-
Bill Budge authored
- Adds SetPermissions method which returns bool result. - Eliminates Guard, SetReadAndWritable, SetReadAndExecutable, and SetReadWriteAndExecutable methods. - Adds some Fuchsia memory allocation implementation. - Some minor fixes in usage of OS::AllocatePageSize and OS::CommitPageSize. - Adds DCHECKs for sanitizing parameters to OS::Allocate/Free. Bug: chromium:756050 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I966ec6f029dd0371d70eca20bae197d87956f8b5 Reviewed-on: https://chromium-review.googlesource.com/760657 Commit-Queue: Bill Budge <bbudge@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49430}
-
Tobias Tebbi authored
Reland of https://chromium-review.googlesource.com/c/v8/v8/+/727893 The crashes should be fixed by https://chromium-review.googlesource.com/c/v8/v8/+/763531 Original change's description: > Revert "Reland^5 "[turbofan] eagerly prune None types and deadness from the graph"" > > This reverts commit ac0661b3. > > Reason for revert: Clusterfuzz unhappy: chromium:783019 chromium:783035 > > Original change's description: > > Reland^5 "[turbofan] eagerly prune None types and deadness from the graph" > > > > This gives up on earlier attempts to interpret DeadValue as a signal of > > unreachable code. This does not work because free-floating dead value > > nodes, and even pure branch nodes that use them, can get scheduled so > > early that they get reachable. Instead, we now eagerly remove branches > > that use DeadValue in DeadCodeElimination and replace DeadValue inputs > > to value phi nodes with dummy values. > > > > Reland of https://chromium-review.googlesource.com/715716 > > > > Bug: chromium:741225 chromium:776256 > > Change-Id: I251efd507c967d4a8882ad8fd2fd96c4185781fe > > Reviewed-on: https://chromium-review.googlesource.com/727893 > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#49188} > > TBR=jarin@chromium.org,tebbi@chromium.org > > Bug: chromium:741225 chromium:776256 chromium:783019 chromium:783035 > Change-Id: I6a8fa3a08ce2824a858ae01817688e63ed1f442e > Reviewed-on: https://chromium-review.googlesource.com/758770 > Reviewed-by: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49262} TBR=jarin@chromium.org,tebbi@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: chromium:741225 chromium:776256 chromium:783019 chromium:783035 Change-Id: I6c02b4beb02997ec34015ed2f6791a93c70f5e36 Reviewed-on: https://chromium-review.googlesource.com/772150 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#49429}
-
Tom Anderson authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/98bbbff..5698e23 Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/93a751e..9c40f80 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/755a485..fd88dfb Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/4b58512..e70074d R=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: I659fc77cdada9b96c42b9b7ea86766b47b6f8352 Reviewed-on: https://chromium-review.googlesource.com/775320Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Thomas Anderson <thomasanderson@chromium.org> Cr-Commit-Position: refs/heads/master@{#49428}
-
Tobias Tebbi authored
Bug: Change-Id: Ibd7c17b4ace25237c3d35466280aff27c44016f0 Reviewed-on: https://chromium-review.googlesource.com/774461Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#49427}
-
Clemens Hammacher authored
This is a reland of 77b0baa6. Original change's description: > [wasm] Fix importing wasm-lazy-compile stubs > > If two modules use lazy compilation, and one imports a function of > another, we are unwrapping the js-to-wasm wrapper of the export. This > was failing so far, because during unwrapping we did not find the wasm > code. > This CL fixes this by also recognizing WasmCompileLazy stubs as "wasm > code". > > R=ahaas@chromium.org > > Bug: chromium:779569, v8:5991 > Change-Id: If2260c3721e3746a7635b9d0182fd520df2fb773 > Reviewed-on: https://chromium-review.googlesource.com/771672 > Commit-Queue: Clemens Hammacher <clemensh@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#49405} Bug: chromium:779569, v8:5991 Change-Id: I4818e933467bd5a040f1514b8fc18db219a092c7 Reviewed-on: https://chromium-review.googlesource.com/774538Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#49426}
-
Andreas Haas authored
We extended the platform API so that it is now possible to post foreground tasks from background tasks. This new platform API has been implemented now in all platforms within V8, and in the gin platform in chrome. The implementation in node.js is still missing. I don't think there are any node.js tests which use async compilation for WebAssembly. Therefore we could turn on async compilation again to get canary coverage. Bug:chromium:764313 R=titzer@chromium.org, bradnelson@chromium.org CC=franzih@chromium.org Change-Id: Ib7f17d84983ad73b936e1de691c18c2f7e06ca5e Reviewed-on: https://chromium-review.googlesource.com/775338 Commit-Queue: Andreas Haas <ahaas@chromium.org> Commit-Queue: Brad Nelson <bradnelson@chromium.org> Reviewed-by: Brad Nelson <bradnelson@chromium.org> Cr-Commit-Position: refs/heads/master@{#49425}
-
Andreas Haas authored
At the moment the inspector tests do not dispose the isolate. This is a problem because the disposal of the isolate is used to stop the execution of background tasks. The missing disposal of the isolate caused flaky tests on the bots recently. With this CL the isolates of the inspector tests get disposed. The disposal of the isolate requires the following changes: 1) Store the isolate in a unique_ptr so that it gets disposed when the isolate-data gets disposed. It is necessary to use the unique_ptr so that the isolate gets disposed after other members of isolate-data get disposed. 2) Dispose all sessions. The reason is that the sessions require the isolate to exist when they get disposed because they own handles. Sessions, however, are stored in a static map, whereas the isolate is stored indirectly in a local variable of the main function. Since local variables get disposed before the static map is cleared, we have to clear the map before the end of the main function. R=kozyatinskiy@chromium.org Change-Id: Icb33184de254638b6cdfb899e940f18e6064cd69 Reviewed-on: https://chromium-review.googlesource.com/774885Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#49424}
-
Clemens Hammacher authored
When initializing the stack state at a merge point, don't force all stack slots into registers. Allow constants to stay constants as long as they are not part of the merge. Otherwise we might break assumptions of outer blocks which then try to merge a register into a constant and fail. Also, add some documentation to {InitMergeStackSlot} to document the intent of the implementation. R=titzer@chromium.org Bug: v8:784050, v8:6600 Change-Id: I3a4c83b446909027be075d3207cb7c748a6b1aad Reviewed-on: https://chromium-review.googlesource.com/766353Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#49423}
-
Ross McIlroy authored
Now that UnoptimizedCompileJob only has three stages, move the logic for stepping between these stages out of UnoptimizedCompileJob and back into CompilerDispatcher. BUG=v8:5203 Change-Id: I3bb776e14ef9da801dc9792e9e643b8026135060 Reviewed-on: https://chromium-review.googlesource.com/774743Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#49422}
-
Leszek Swirski authored
Make the accessors of SharedFunctionInfo instance_class_name take and return String rather than Object, since it's always a String anyway. Change-Id: Ic5dacccf3835550e3533356fe7ded37ea107d720 Reviewed-on: https://chromium-review.googlesource.com/774882Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#49421}
-
Martyn Capewell authored
Align the stack operations in the deoptimizer and take the opportunity to factorise and improve the code generated for copying. Bug: v8:6644 Change-Id: I854a975c371936bbf720d56e80dc0c9d68fe7c92 Reviewed-on: https://chromium-review.googlesource.com/763535Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Martyn Capewell <martyn.capewell@arm.com> Cr-Commit-Position: refs/heads/master@{#49420}
-
Andreas Haas authored
With this CL both the AsyncCompileJob and the ModuleCompiler use the new TaskRunner API to post tasks. With the TaskRunner API it is also valid to post foreground tasks from background tasks. R=titzer@chromium.org Change-Id: Ie3a1b0026f834c25540407eb79abdf67071915fb Reviewed-on: https://chromium-review.googlesource.com/741590Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#49419}
-
Andreas Haas authored
CompileTasks contain a pointer to the isolate. All tasks which have a pointer to the isolate have to be cancelable to make sure that the task does not execute after the isolate shut down. R=rmcilroy@chromium.org Change-Id: I10b2af0177b5cb60ab1dfdad47529fb8c7301ba0 Reviewed-on: https://chromium-review.googlesource.com/774441Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#49418}
-
Michal Majewski authored
Bug: v8:6917 Change-Id: Ic50ed8aca2ef6b6e60eae194cf46c2264a416657 Reviewed-on: https://chromium-review.googlesource.com/774265 Commit-Queue: Michał Majewski <majeski@google.com> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#49417}
-
Yuki Shiino authored
Blink wants to use Maybe<T> as a return type of (author) callback functions, where T can be type void. So, this patch adds support of Maybe<void>. Bug: chromium:778580, chromium:779036 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Id654bafc5ceac8ef6f755902418f250c353a8837 Reviewed-on: https://chromium-review.googlesource.com/771730 Commit-Queue: Yuki Shiino <yukishiino@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#49416}
-
Michal Majewski authored
Bug: v8:6917 Cq-Include-Trybots: master.tryserver.v8:v8_linux_noi18n_rel_ng Change-Id: I09fb05ac6d4b9b1223118494ce2c89e3ab5de109 Reviewed-on: https://chromium-review.googlesource.com/771870Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michał Majewski <majeski@google.com> Cr-Commit-Position: refs/heads/master@{#49415}
-
Michael Starzinger authored
This ensures that the {Code::builtin_index} field is only set during allocation of new {Code} objects, making this field truly immutable. R=jgruber@chromium.org BUG=v8:6792 Change-Id: Ic793346976183149e2d077e92cb9da3c925ea865 Reviewed-on: https://chromium-review.googlesource.com/774439Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#49414}
-
Ross McIlroy authored
Simplifies the unoptimized compile job to have only three steps, the on-main-thread prepare step, the off-thread compile step and the on-main-thread finalization step. As part of this change, the compiler dispatcher no longer supports functions with outer scopeinfo's, since these need to be analysed on the main thread. BUG=v8:5203 Change-Id: Ifb378ef81bd47b6f6d4037a3b8acf88660896c4e Reviewed-on: https://chromium-review.googlesource.com/774558 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#49413}
-