- Add three new embedder hooks registered with Dart_SetEmbedderTimelineCallbacks
- Dart_EmbedderTimelineStartRecording
- Dart_EmbedderTimelineStopRecording
- Dart_EmbedderTimelineGetTimeline
- Add unit test for record start / stop notification.
- Add unit test for get timeline.
This should allow Flutter to remove their hacked up timeline service RPCs.
R=chinmaygarde@google.com, rmacnak@google.com
Review URL: https://codereview.chromium.org/1783953002 .
The stack overflow check on the back-branch of the loop must
be at the same context level as the (outer) loop block of
the for-loop.
Before this change, the stack check was recorded to be at a
token position that is outside of the loop block, which caused
a context mismatch on some stack traces when the debugger
or the observatory interrupted the isolate on that back
branch.
It is not practical to write a test for this, unfortunately.
BUG=25684
R=fschneider@google.com
Review URL: https://codereview.chromium.org/1768763002 .
- Rename TimelineEventStreamingRecorder to TimelineEventCallbackRecorder. Note that this should only be used for tests.
- Add 'Timeline' service event stream.
- Send a 'TimelineEvents' event on the 'Timeline' stream whenever a TimelineEventBlock is finished and the 'Timeline' stream is subscribed to.
- Simple service protocol test.
R=turnidge@google.com
Review URL: https://codereview.chromium.org/1765563002 .
depend on the current rounding mode (fixes issue 25900).
Add support for TRUNC.W in assembler, disassembler, and simulator.
Fix disassembler to understand CVT.S.
Remove unused instructions.
Update co19 status file.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org/1765623002 .
Fixes#25902
Issue #1
Assuming --pause-isolates-on-start, there is a window of time after an isolate is made runnable and before it pauses at the first message that we say the isolate is "resumed".
- Fix issue #1 by claiming the isolate is paused on start if it will eventually pause on start.
- Also, handle the resume command for this state by clearing the 'should pause on start' bit.
Issue #2
Before an isolate is made runnable we say the isolate is "resumed".
- Fix issue #2 by introducing a new pause event "None".
R=turnidge@google.com
Review URL: https://codereview.chromium.org/1756393002 .
For now, change compilation-related flags to be regular
command line options. They won't affect the size of the
precompiled runtime anyway since the compiler is not included
there.
Also introduce a separate switch for precompiled runtime. This can be
used instead of the macro since it is a compile-time constant in the
precompiled runtime.
BUG=
Review URL: https://codereview.chromium.org/1759913002 .
- Fix bug in inlined call token positios.
- Add ProfileFunctionSourcePosition for tracking source positions within functions.
- Keep a list of ProfileFunctionSourcePosition in each function.
- Add unit test helper functions.
- Add unoptimized unit tests that verify source positions in function profiles.
- Add optimized/inlined unit tests that verify source positions in function profiles.
R=srdjan@google.com
Review URL: https://codereview.chromium.org/1758653003 .
Looking up a name x in the library scope or in a prefix can also return
the setter name x=. There were several situations that were not handled
right.
- a getter x and a setter x= should not result in a duplicate name
error (and thus a resolution error at runtime).
- when looking for an untangled name x but a setter x= is found first,
keep looking for x.
BUG=25625
R=regis@google.com
Review URL: https://codereview.chromium.org/1752203002 .
- Create a separate compilation output directory for each VMOptions varient so they can run in parallel.
- Run both the snapshotter and assembler from the test harness instead of a wrapper script so crashes in the snapshotter are correctly identified by the test harness.
- Delete the assembly source for the precompiled shared library as we go to limit space required to run the test suite (now 61GB for X64 release).
- Remove the VMOption --optimization-counter-threshold in when running precompilation tests.
- Don't look at a library prefix's import list during load(), it was removed by tree-shaking.
- Trace types of TypeParameters.
- Trace types of a Function's owner and parent.
- Update status file for remaining 4 failures under http://dartbug.com/25892.
R=fschneider@google.com
Review URL: https://codereview.chromium.org/1732323005 .
in these blocks will not have a safepoint operation
- changed boxed_field_list_monitor_ to boxed_field_list_mutex_ as we only
need a mutex for guarding access to boxed_field_list_ as changed the
lock to use SafepointMutexLocker as the list addition code could potentially
allocate and result in GC (safepoint operation)
- Added a SafepointMonitorLocker as we have a function Isolate::VisitIsolates
which could potentially have safepoints in the enclosed block.
- Make the lock around MegamorphicCacheTable::Lookup a SafepointMutexLocker
as the look up code seems to be allocating memory while the lock is held.
- Changed the ThreadPool and MessageHandler code to account for the new
MonitorLocker usage standard
- Fixed PortMap::PrintPortsForMessageHandler to use SafepointMutexLocker as
the code it encloses calls into Dart
- Removed profiler_ field in class Profiler as it doesn't seem to be used.
R=johnmccutchan@google.com, srdjan@google.com
Review URL: https://codereview.chromium.org/1748953003 .