Commit Graph

20 Commits

Author SHA1 Message Date
Ben Konyi e44c0b2264 [ Service ] Add 'is_system_isolate' option to Dart_IsolateFlags
Provides a general way to designate an isolate as a 'system isolate'
(formerly known as 'VM internal isolates').

Initial fix for https://github.com/dart-lang/sdk/issues/42875

Change-Id: I8798a3a1c51df1db8008d602f6303df13c958cba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/158063
Commit-Queue: Ben Konyi <bkonyi@google.com>
Reviewed-by: Ryan Macnak <rmacnak@google.com>
2020-08-21 21:44:50 +00:00
Ryan Macnak cd55d62ac1 [vm] Change THR_Print to filter based on isolate group.
Parts of the GC now run without a current isolate, so THR_Prints there were all silenced.

Change-Id: Icd4be68eca8a2edfa43b4f140f69babd798f17af
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149371
Commit-Queue: Ryan Macnak <rmacnak@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
2020-05-30 01:06:44 +00:00
Aart Bik 7f88b64e0a [vm] buffer size based log flushing
Useful when debugging on Android, since adb logcat
truncates messages that are "too long" (and always
flushing would result in too many short messages).

Change-Id: I51978b4e352d65c9074ab1d830b042f68e06710d
Reviewed-on: https://dart-review.googlesource.com/70740
Reviewed-by: Ryan Macnak <rmacnak@google.com>
Commit-Queue: Aart Bik <ajcbik@google.com>
2018-08-20 22:47:31 +00:00
Vyacheslav Egorov 20ca5bbb05 [vm/jit] Introduce dynamic invocation forwarders that perform type checking
This forwarders are used at dynamic call-sites and perform type checking
for all non-generic-covariant arguments. This allows to skip the same
type checks in the actual method body.

This yield on average 10% improvement in performance across the body of
benchmarks including dart2js compilation times.

Bug: https://github.com/dart-lang/sdk/issues/33257
Change-Id: If3fc94a2e0a6f496ec0633f0b379d053a54a40ca
Reviewed-on: https://dart-review.googlesource.com/61244
Commit-Queue: Vyacheslav Egorov <vegorov@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2018-06-25 07:27:04 +00:00
Ryan Macnak 558a931409 [vm] Move some string utils from runtime/vm to runtime/platform.
Change-Id: I552086445a7e07792f9da85afa5edf23b6c450d5
Reviewed-on: https://dart-review.googlesource.com/44402
Reviewed-by: Siva Annamalai <asiva@google.com>
Commit-Queue: Ryan Macnak <rmacnak@google.com>
2018-03-01 02:07:46 +00:00
Régis Crelier 407f1f8ca1 [VM logging] Fix nesting of log blocker (second attempt).
Fix expectations of log blocker test, i.e. no swapping occurs anymore.

R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2999833002 .
2017-08-14 08:38:52 -07:00
Régis Crelier c762bd3145 Revert "[VM logging] Fix nesting of log blocker."
This reverts commit 1c268d35df.

BUG=

Review-Url: https://codereview.chromium.org/2995793002 .
2017-08-11 13:16:47 -07:00
Régis Crelier 1c268d35df [VM logging] Fix nesting of log blocker.
R=rmacnak@google.com

Review-Url: https://codereview.chromium.org/2994143002 .
2017-08-11 12:43:37 -07:00
Zachary Anderson 6cd8a79078 VM: Re-format to use at most one newline between functions
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2974233002 .
2017-07-13 08:08:37 -07:00
Ryan Macnak 781fd36086 Add an option to gen_snapshot for creating a Makefile describing a snapshot's dependencies. This option may be used when generating any snapshot kind, or without generating a snapshot.
- Factor out MallocGrowableArray from vm to platform.
 - Add File::Print.

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2715463003 .
2017-02-23 12:40:48 -08:00
Zachary Anderson a1bcf051d8 clang-format runtime/vm
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2481873005 .
2016-11-08 13:54:47 -08:00
John McCutchan d17214fda0 Add --timeline-recorder= flag and fix --timeline-dir flag
- Add --timeline-recorder= flag to allow explicit control over the recorder used.
- Fix crash when using THR_Print early in VM startup.
- Fix crash when using --timeline-dir to dump timeline to disk.

R=hausner@google.com

Review URL: https://codereview.chromium.org/1897963002 .
2016-04-19 09:21:59 -07:00
Srdjan Mitrovic 61200b26a3 Fix multi-threaded access to logs
BUG=
R=johnmccutchan@google.com, zra@google.com

Review URL: https://codereview.chromium.org/1691853002 .
2016-02-11 10:08:02 -08:00
Regis Crelier 7f57ebcfa1 Remove signature classes from the VM.
They were used as the class of closure instances and as the type class of
function types.
All closure instances now have class _Closure and function types are represented
by a new class FunctionType extending AbstractType.
Fix issue 24567 and add regression test.

R=asiva@google.com, rmacnak@google.com

Review URL: https://codereview.chromium.org/1584223006 .
2016-01-19 16:32:59 -08:00
Siva Annamalai 9e19d236ca - Add an OSThread structure which is the generic TLS structure for all C++
fields in a thread (i.e fields that are not Dart VM related)
- Split the Thread structure to be a pure Dart per thread structure and add
  a pointer to os_thread which points to the OSThread structure
- Change Schedule/UnSchedule to set the Dart Thread structure as the TLS of
  the thread when it is inside the Dart world and reset the TLS back to the
  OSThread strcuture when is exits the Dart World.
- Moved the stack_base and few stack size related functions to OSThread from Isolate

R=johnmccutchan@google.com, zra@google.com

Review URL: https://codereview.chromium.org/1439483003 .
2015-11-19 13:45:10 -08:00
Daniel Andersson a1bc527306 Migrate logging infrastructure Isolate->Thread
This enables thread-safe logging (e.g., ISL_Print, which will soon be renamed to THR_Print), which is needed for concurrent
marking (DetachCode) and compilation.

Make finalization of GC marking tasks concurrent, now that it's thread-safe.

BUG=
R=iposva@google.com

Review URL: https://codereview.chromium.org//1314673008 .
2015-09-09 15:30:38 -07:00
Daniel Andersson 32046b2eb8 Migrate stack resource unwinding to Thread.
Also remove some uses of deprecated StackResource constructor.

BUG=
R=asiva@google.com

Review URL: https://codereview.chromium.org//1261873005 .
2015-07-31 12:57:19 -07:00
johnmccutchan@google.com 20efd2f0c4 Add Log::VPrint and remove duplicated code.
BUG=
R=srdjan@google.com

Review URL: https://codereview.chromium.org//913603002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43624 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 23:28:47 +00:00
johnmccutchan@google.com 74469b2a9f Use printf("%s", str); to avoid glibc assertion
BUG=

Review URL: https://codereview.chromium.org//911713002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43614 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 21:28:54 +00:00
johnmccutchan@google.com a6483aefd1 Per isolate Log with block support
BUG=
R=srdjan@google.com

Review URL: https://codereview.chromium.org//913503004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43604 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 18:54:20 +00:00