- 13 Aug, 2020 1 commit
-
-
Etienne Pierre-doray authored
Expose: - JobHandle::IsCompleted() - worker_count passed as argument to GetMaxConcurrency() - JobDelegate::GetTaskId With default implementation. Once gin implements it, it can be made pure virtual. Bug: chromium:1114823 Change-Id: I24ce60d1df6adff4061c050e5aa8bf8d7bb1cf5a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352485 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#69388}
-
- 30 Jul, 2020 1 commit
-
-
Dan Elphick authored
This adds new methods AllocateSharedPages, ReserveForSharedMemoryMapping and CanAllocateSharedPages to v8::PageAllocator, which if overridden allows the platform to declare that it supports allocation and remapping of shared memory. This interface is currently a work in progress so the new methods are marked "INTERNAL ONLY" and they may change without being first deprecated. An implementation of PageAllocator is provided that can allocate and map shared memory on Linux and Android, but no other platforms are yet supported. While Windows is not supported the interface has been designed to make this possible as AllocateSharedPages returns a SharedMemory object that wraps the shared memory and provides its own remap function. This should allow the SharedMemory object on windows to contain a mapping a to hFileMappingObject as required by MapViewOfFileEx. Bug: v8:10454 Change-Id: I2e601d49ea14da44867a102c823fa4e341cf0dab Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2306789Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#69154}
-
- 23 Jul, 2020 1 commit
-
-
Clemens Backes authored
The default implementation just returns {nullptr}, which is not a correct implementation. Since we rely on the implementation of {PostJob} since https://crrev.com/c/2301933, and embedders can just use {NewDefaultJobHandle} since https://crrev.com/c/2304812 (backported to 8.5), we should stop providing this dangerous default. R=ulan@chromium.org Bug: v8:10723, v8:10740, chromium:1101340 Change-Id: I6e34c584cbed186ddf6cfa4a9c5a7e8caa3b61c8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2315981 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#69021}
-
- 20 Jul, 2020 1 commit
-
-
Clemens Backes authored
This will allow embedders to actually instantiate the {DefaultJobHandle} as suggested in the comment. Node currently implements {PostJob()} by just returning a nullptr. After this change, it can use the new {NewDefaultJobHandle} function and we can actually start using this API in v8. R=adamk@chromium.org Bug: v8:10723 Change-Id: I4b31a640d0edc7e7207d1df95e683465dfaaaeff Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2304812Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#68934}
-
- 23 Jun, 2020 1 commit
-
-
Marja Hölttä authored
Clarify when we should use PostTask vs PostNonNestableTask. Change-Id: I2b69dc4d4b6de4079dcab05e8b5c3b1f77cbbe2c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2253852 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#68475}
-
- 27 Apr, 2020 1 commit
-
-
Clemens Backes authored
The category name changed in https://crrev.com/c/2159690 (in depot_tools), hence presubmit tests start failing whenever someone touches a file which still refers to the old category. R=zhin@chromium.org TBR=machenbach@chromium.org No-Try: true No-Tree-Checks: true Change-Id: I62813a42d63e512d421c4fe94229d04a56056978 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2165760Reviewed-by: Zhi An Ng <zhin@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#67403}
-
- 24 Apr, 2020 1 commit
-
-
Etienne Pierre-doray authored
The impl works by posting up to NumberOfWorkerThreads() tasks with CallOnWorkerThread(). Change-Id: I188ac57c9e5d6e3befdcc6f945fbf337dabe1d1d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2130886 Commit-Queue: Etienne Pierre-Doray <etiennep@chromium.org> Reviewed-by: Gabriel Charette <gab@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#67368}
-
- 17 Apr, 2020 1 commit
-
-
Sami Kyostila authored
This patch replaces V8's tracing implementation (i.e., the TRACE_EVENT macros) with the track event base implementation from Perfetto. The advantages of doing this are: 1) This allows us to remove most tracing-related backend code from V8. 2) V8 can start writing strongly typed trace event arguments, which are more compact, easier to process and more extensible than legacy JSON-based trace arguments. For the time being, we still support the old trace macros when V8 is embedded into Chrome and other embedders. Design doc: https://docs.google.com/document/d/1f7tt4cb-JcA5bQFR1oXk60ncJPpkL02_Hi_Bc6MfTQk/edit#heading=h.398p6b4eaen2 Bug: chromium:1006766 Change-Id: Ie71474fbe065821772b13d851487ebbca680c4ae Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1947688 Commit-Queue: Sami Kyöstilä <skyostil@chromium.org> Auto-Submit: Sami Kyöstilä <skyostil@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#67217}
-
- 24 Jan, 2020 1 commit
-
-
Shu-yu Guo authored
Bug: v8:8179 Change-Id: I2e7024412216decc06e814e88eecd5b4eb5ae8cb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2013696Reviewed-by: Ben Smith <binji@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#65966}
-
- 08 Jan, 2020 1 commit
-
-
Clemens Backes authored
It has been deprecated in v7.9, but needed to be changed again for v8.0 by providing a default implementation. This allowed embedders to remove all overrides. We can now remove the definitions in v8.1. R=ulan@chromium.org CC=ahaas@chromium.org Bug: v8:9810 Change-Id: I9d303bf8a01d863bce3522abccdd3ded5e551818 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868620Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#65633}
-
- 21 Oct, 2019 1 commit
-
-
Clemens Backes authored
Before we can remove the deprecated methods, we need to provide default implementations for them. Then, we can remove all overrides in embedders, and finally remove the methods from v8. R=ulan@chromium.org CC=ahaas@chromium.org Bug: v8:9810 Change-Id: If9286dc8ba441c226c9a1d524832ff203ac4bce6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871915Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64419}
-
- 14 Oct, 2019 1 commit
-
-
Clemens Backes authored
It was marked V8_DEPRECATE_SOON in https://crrev.com/c/1261936 (part of M-71). R=ahaas@chromium.org, ulan@chromium.org Bug: v8:9810 Change-Id: I64a7937b518dbf2a75361bbbecd514618922d543 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1849523Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64273}
-
- 09 Oct, 2019 1 commit
-
-
Clemens Backes authored
Since C++14, there is a spec'ed attribute for deprecation of methods, functions, types, aliases or anything else. This CL switches from the GCC __attribute__ to this standard attribute. This allows to use the V8_DEPRECATED and V8_DEPRECATE_SOON macros on anything where the standard attribute can be used (including {using} statements that were not working before). It also avoids the need to nest the whole declaration in the macro, making the code more readable. R=adamk@chromium.org Bug: v8:9810 Change-Id: I7adab7694af75423fb31ade2fc982dbf9c9bc699 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1847361Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64174}
-
- 13 Aug, 2019 1 commit
-
-
Irina Yatsenko authored
This allows us to keep v8 free of the dependency on the crash/base components. Second half of the change: https://chromium-review.googlesource.com/c/chromium/src/+/1690003. Bug: v8:9323 Change-Id: If35288e3916df951ae6e2ae39e1cb06fab5fbf8c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1699102 Commit-Queue: Irina Yatsenko <irinayat@microsoft.com> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#63177}
-
- 08 Jul, 2019 1 commit
-
-
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}
-
- 13 May, 2019 1 commit
-
-
gengjiawen authored
Effective Modern C++ Items 11: Prefer deleted functions to private undefined ones Change-Id: I35c6277fcc77c60fc0a3d904763039c916d62b78 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1608325Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#61433}
-
- 19 Feb, 2019 1 commit
-
-
Ulan Degenbaev authored
Bug: chromium:926189 Change-Id: Ibd90f3cfdb37f07f3668f9ad79cff6e4305dc874 Reviewed-on: https://chromium-review.googlesource.com/c/1477674Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#59688}
-
- 08 Feb, 2019 1 commit
-
-
Yang Guo authored
This allows the embedder to use a shared library build even if they use this method. R=ulan@chromium.org Change-Id: I613a6e5eb82b494128fb95dc89a0b73639ac5ca2 Reviewed-on: https://chromium-review.googlesource.com/c/1456042Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#59455}
-
- 14 Jan, 2019 1 commit
-
-
Andreas Haas authored
When we run TurboFan compilation for WebAssembly on worker threads with default priority, we see in bug reports (https://crbug.com/914757) and in experiments that TurboFan compilation can block other, higher priority tasks. Therefore we want to post TurboFan compilation tasks with lower priority. A quick prototype showed that if we run all WebAssembly compilation with low priority, the problem described in https://crbug.com/914757 is fixed. R=adamk@chromium.org CC=rmcilroy@chromium.org Bug: chromium:920181 Change-Id: I85e2c0c6a96ff9ef165a23ef8eb531944b20f2b0 Reviewed-on: https://chromium-review.googlesource.com/c/1402790Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#58792}
-
- 22 Oct, 2018 2 commits
-
-
Hannes Payer authored
Bug: chromium:897074 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I728572cda9a8914ee689eeee68a060b5713e4c6b Reviewed-on: https://chromium-review.googlesource.com/c/1290972Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#56845}
-
Hajime Hoshi authored
This CL adds OnFailure::DUMP_ON_FAILURE representing a scope where base:: DumpWithoutCrash is called when V8 execution is detected. As V8 can't call base functions, this CL also adds Platform::DumpWithoutCrash. Doc: https://docs.google.com/document/d/1PStT6dPlSM7QfGUJQD6t6LNLTv_48gNMhY5RdEpt3XQ/edit?disco=AAAACJ6Xg0o&ts=5bc0be1b BUG=chromium:870606 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I5df62fd99ed78adb4e2505aeaee3d526d6786e59 Reviewed-on: https://chromium-review.googlesource.com/c/1276325Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Commit-Queue: Hajime Hoshi <hajimehoshi@chromium.org> Cr-Commit-Position: refs/heads/master@{#56838}
-
- 10 Oct, 2018 1 commit
-
-
Michael Lippautz authored
The API will be used to post GC tasks that benefit from being executed at top level. Bug: chromium:843903 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I062855e810ca9a8d8af8ae8b66e02c85e108798b Reviewed-on: https://chromium-review.googlesource.com/c/1273045Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#56528}
-
- 05 Oct, 2018 1 commit
-
-
Andreas Haas authored
These functions got replaced the the taskrunner API. The new way to post tasks is as follows: v8::Platform* platform = ...; // e.g. V8::GetCurrentPlatform(); v8::Isolate* = ...; std::shared_ptr<v8::TaskRunner> taskrunner = platform->GetForegroundTaskRunner(isolate); std::unique_ptr<v8::Task> task = ...; taskrunner->PostTask(std::move(task)); R=ulan@chromium.org Bug: v8:8238 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I44a70fc530daae581ee31e54fd09e776ba648406 Reviewed-on: https://chromium-review.googlesource.com/c/1261936Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#56400}
-
- 16 May, 2018 1 commit
-
-
Gabriel Charette authored
Also fixup some implementations that were lagging behind per the lack of pure virtual not having enforced everything yet. Also fixed recently introduced PredictablePlatform::CallDelayedOnWorkerThread() to ignore delayed tasks after realizing the intent is to intercept worker tasks instead of sending them to |platform_|. Node.js migrated off these APIs @ https://github.com/v8/node/pull/69 R=ahaas@chromium.org, yangguo@chromium.org Bug: chromium:817421 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I92171f213b5fc64ab1f21e8eec72738f5ce228bd Reviewed-on: https://chromium-review.googlesource.com/1045310 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#53223}
-
- 03 May, 2018 1 commit
-
-
Michaël Zasso authored
Add an include of stdlib.h for the abort function. Compilation fails on FreeBSD without it. See Node.js issue: https://github.com/nodejs/node-v8/issues/56 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I67ac21fdc9bc1072d5aaf4f7180dcf4000a938c9 Reviewed-on: https://chromium-review.googlesource.com/1039705Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Michaël Zasso <mic.besace@gmail.com> Cr-Commit-Position: refs/heads/master@{#52934}
-
- 30 Apr, 2018 2 commits
-
-
Gabriel Charette authored
As discussed @ https://chromium-review.googlesource.com/c/chromium/src/+/957761#message-4ba6c1bf637f91507544efc89a31e3e4dd407715 and again @ https://chromium-review.googlesource.com/c/chromium/src/+/957761#message-6d0430e640c82f2d5463259fecdc7fabf945b958 Get rid of task runners for WorkerThreads API (use case is always a one-off task in which case a static call is fine -- just like in Chromium's base/task_scheduler/post_task.h) Calling into V8Platform* from any worker thread is safe, what was previously unsafe was using an Isolate* from worker threads but Isolate* was dropped from the new worker threads APIs so this is now irrelevant. Bug: chromium:817421 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Idd2dbc081edfbcb8985eeb45eb64ffb2555fcf7c Reviewed-on: https://chromium-review.googlesource.com/978443 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/master@{#52893}
-
Gabriel Charette authored
GetWorkerThreadsTaskRunner() was about to be phased out [1] but v8 r52818 landed ahead of it. Add CallDelayedOnWorkerThread() to the new worker thread API to support this use case before phasing out GetWorkerThreadsTaskRunner() [1] https://chromium-review.googlesource.com/c/v8/v8/+/978443 Implemented it in d8+cctest+default-platform right away to avoid requiring a non-null Isolate* (and yet another transitional API). R=ahaas@chromium.org, kozyatinskiy@chromium.org Bug: chromium:817421 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I2bee08fee08cf15a664d31cc6817e21cebe1d140 Reviewed-on: https://chromium-review.googlesource.com/1033584 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#52892}
-
- 17 Apr, 2018 1 commit
-
-
Dan Elphick authored
Add a new permission kRead to PageAllocator::Permission and OS::MemoryPermission and implement it in platform-*. Not used yet, because it needs corresponding changes in chromium. Bug: v8:7464 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I9f84251eff593536cbcc1cde04641d696c79d65c Reviewed-on: https://chromium-review.googlesource.com/1006756Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#52636}
-
- 26 Mar, 2018 1 commit
-
-
Gabriel Charette authored
This is done now while embedders have yet to adapt to the new API before it becomes hard to migrate. Also renamed variable/methods to use "worker threads" rather than "background" nomenclature. Extracted from https://chromium-review.googlesource.com/c/v8/v8/+/978443/7 while resolving the more contentious bits around using task runners. TBR=rmcilroy@chromium.org Bug: chromium:817421 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ie3ddf15a708e829c0f718d89bebf3e96d1990c16 Reviewed-on: https://chromium-review.googlesource.com/980953 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Gabriel Charette <gab@chromium.org> Cr-Commit-Position: refs/heads/master@{#52231}
-
- 01 Mar, 2018 4 commits
-
-
Gabriel Charette authored
Follow-up to https://chromium-review.googlesource.com/c/v8/v8/+/941442. "background" refers to a priority and is inappropriate to refer to worker threads as many tasks posted to worker threads by v8 are in fact high priority. Also took advantage of this rename to make NumberOfWorkerThreads() return an int instead of size_t. While it is never negative, int is simpler and Google C++ style guide states to avoid unsigned integers in such cases (ref. "On Unsigned Integers" @ https://google.github.io/styleguide/cppguide.html#Integer_Types). The Chromium embedder for that call provided an int which was converted to size_t for this override and most often casted back down to int on the v8 side, adding churn, and readability overhead. R=ahaas@chromium.org Bug: v8:7310 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ib5280df73d2846b111d985be65a10b049995ea6a Reviewed-on: https://chromium-review.googlesource.com/941944 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#51662}
-
Gabriel Charette authored
Follow-up to https://chromium-review.googlesource.com/c/v8/v8/+/941442#message-bc46157bdd4667cb44c2533bfd3201b45c32fe75 TBR=rmcilroy@chromium.org Bug: v8:7310 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: If3afbdca1393e7f3bb264abadd99f83f5a2b554a Reviewed-on: https://chromium-review.googlesource.com/942823 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Gabriel Charette <gab@chromium.org> Cr-Commit-Position: refs/heads/master@{#51656}
-
Gabriel Charette authored
and use it for parallel GC as it blocks the main thread. On Chromium this will result in a TaskPriority::USER_BLOCKING task, allowing TaskScheduler to prioritize them above all other async work. R=ahaas@chromium.org Bug: chromium:817421 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I8c782eb045035ce2899214528deae5a45f0e6600 Reviewed-on: https://chromium-review.googlesource.com/941946 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#51650}
-
Gabriel Charette authored
With a temporary intermediate step to allow adapting embedders before getting rid of the ExpectedRuntime method altogether. The method is being renamed to CallOnWorkerThread() as an effort to go away from "background" nomenclature for worker threads ("background" usually refers to a priority but worker threads are commonly used for high priority tasks in v8). Other CLs will follow to rename other "background" APIs. Bug: v8:7310 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng;master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I2fd4eac7458708d4eacb0f4871c982a567a3865e Reviewed-on: https://chromium-review.googlesource.com/941442 Commit-Queue: Gabriel Charette <gab@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#51645}
-
- 24 Jan, 2018 1 commit
-
-
Michael Starzinger authored
This reverts commit bf19e60c. Reason for revert: Two issues discovered with W^X in V8's 6.5 branch (see v8:7272 and chromium:793428). Still need a way to disable the feature. Original change's description: > [platform] Remove {PageAllocator::kReadWriteExecute}. > > Now that write-protection of code memory is enabled everywhere and V8 is > fully W^X compliant, we can remove the permission mode in question. > > R=hpayer@chromium.org > BUG=v8:6792 > > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I80fe95ac6bb0e2d1ad6d993154ce45d492d941be > Reviewed-on: https://chromium-review.googlesource.com/866855 > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Hannes Payer <hpayer@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#50770} TBR=bbudge@chromium.org,mstarzinger@chromium.org,hpayer@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:6792 Change-Id: If4a205497ac83084a4092560363affb13b391462 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/883461Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#50834}
-
- 22 Jan, 2018 1 commit
-
-
Michael Starzinger authored
Now that write-protection of code memory is enabled everywhere and V8 is fully W^X compliant, we can remove the permission mode in question. R=hpayer@chromium.org BUG=v8:6792 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I80fe95ac6bb0e2d1ad6d993154ce45d492d941be Reviewed-on: https://chromium-review.googlesource.com/866855 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Hannes Payer <hpayer@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#50770}
-
- 12 Jan, 2018 1 commit
-
-
Ali Ijaz Sheikh authored
Bug: Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Icb3cf7b7f96704e1eaa4c5fbf773b94b70cddc85 Reviewed-on: https://chromium-review.googlesource.com/861302Reviewed-by: Fadi Meawad <fmeawad@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Ali Ijaz Sheikh <ofrobots@google.com> Cr-Commit-Position: refs/heads/master@{#50549}
-
- 22 Dec, 2017 1 commit
-
-
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}
-
- 21 Dec, 2017 1 commit
-
-
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}
-
- 14 Nov, 2017 1 commit
-
-
Andreas Haas authored
At the moment, task runners are returned as unique_ptr. This is inconvenient, however. In all implementations I did, the platform holds a shared pointer of the task runner and wraps it in a wrapper class just to return it as a unique_ptr. With this CL the platform API is changed to return a shared_ptr directly. R=rmcilroy@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ide278db855199ea239ad0ae14d97fd17349dac8c Reviewed-on: https://chromium-review.googlesource.com/768867 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#49366}
-
- 30 Oct, 2017 1 commit
-
-
Andreas Haas authored
With the existing platform API it is not possible to post foreground tasks from background tasks. This is, however, required to implement asynchronous compilation for WebAssembly. With this CL we add the concept of a TaskRunner to the platform API. The TaskRunner contains all data needed to post a foreground task and can be used both from a foreground task and a background task. Eventually the TaskRunner should replace the existing API. In addition, this CL contains a default implementation of the TaskRunner. This implementation has tempory workaround for platforms which do not provide a TaskRunner implementation yet. This default implementation should be deleted again when all platforms provide a TaskRunner implementation. R=rmcilroy@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I6ea4a1c9da1eb9a19e8ce8f2163000dbc2598802 Reviewed-on: https://chromium-review.googlesource.com/741588 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#49041}
-