Dan Field
50418e07a1
Fix multicast_ttl patch for windows - previous patch made incorrect
...
call for setsockopt on Windows machines.
collapse if block
move raw_datagram_socket_test to standalone_2
update test, check for success
fix windows
Fix bug in TTL logic for IPv6
Change-Id: I7940e2e1a3c355ebef752f951464e5ade96d2153
Reviewed-on: https://dart-review.googlesource.com/c/83360
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2018-11-07 18:26:04 +00:00
Jens Johansen
55f3cc98d9
Fix missing comma in service.md
...
Change-Id: I324049327cc7454edcc56bf172707e174c3fa729
Reviewed-on: https://dart-review.googlesource.com/c/82996
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Jens Johansen <jensj@google.com >
2018-11-07 06:32:07 +00:00
Ryan Macnak
331472ec76
[vm] Fix interpreter holding an untracked pointer across a safepoint boundary.
...
Change-Id: I44fe05c97253b0897bdd88a526d701db39385eb0
Reviewed-on: https://dart-review.googlesource.com/c/83227
Reviewed-by: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-07 01:37:44 +00:00
Siva Annamalai
cde479301a
Revert "[vm/compiler] Fine tune operator and phi handling."
...
This reverts commit 4d5b5bb5a6 .
Reason for revert: We are seeing an AOT compiler issue as a result of this change (please see https://github.com/flutter/flutter/issues/23879 )
Original change's description:
> [vm/compiler] Fine tune operator and phi handling.
>
> Rationale:
> Running an extra call specialization pass a bit later
> in the compiler passes stream (after types are propagated)
> recognizes more operators, which execute more efficiently.
> In addition, unboxing phis seems useful on all archs, not
> just 32-bit. These minor tweeks combined improve the prime
> number benchmark 3 fold.
>
> https://github.com/flutter/flutter/issues/19677
>
> Change-Id: Ib2102ce807c2f0a9f801542e0c4bc6a7673f552b
> Reviewed-on: https://dart-review.googlesource.com/69240
> Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
> Commit-Queue: Aart Bik <ajcbik@google.com >
TBR=vegorov@google.com ,alexmarkov@google.com ,asiva@google.com ,ajcbik@google.com
# Not skipping CQ checks because original CL landed > 1 day ago.
Change-Id: I46e420f9355bfc3c4a3f2fb9274f648e8a596d9a
Reviewed-on: https://dart-review.googlesource.com/c/83229
Reviewed-by: Siva Annamalai <asiva@google.com >
Reviewed-by: Aart Bik <ajcbik@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2018-11-07 01:09:52 +00:00
Ben Konyi
1dabf0d19c
[ VM / dart:io ] Removed usage of std::make_unique as C++14 is not supported in google3
...
Change-Id: I615bcb89ef2dec2e745a4d321a13a0a131ba7485
Reviewed-on: https://dart-review.googlesource.com/c/83230
Commit-Queue: Ben Konyi <bkonyi@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
Auto-Submit: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-11-07 01:07:23 +00:00
Ben Konyi
fbe3b1ebc0
Reland "[ VM / Mirrors ] Added type checking to enforce strong mode semantics when using dart:mirrors"
...
Was reverted to temporarily fix issue #35009 for 2.1.
This reverts commit 65ffd0f7190f04dd0a8f94b7941e1ab706b0b084.
Change-Id: I71fe094b24f882cd942634557c9c43af06058842
Reviewed-on: https://dart-review.googlesource.com/c/83226
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-11-06 23:59:29 +00:00
Ben Konyi
9c95624a63
Temporary revert to fix issue #35009 for 2.1. package:rpc relies on mirrors behaviour that is not valid for Dart 2, so these type checks cause the package to crash.
...
Revert "[ VM / Mirrors ] Added type checking to enforce strong mode semantics when using dart:mirrors"
This reverts commit 9f00eec55b .
Change-Id: I82ce07d388ba9402f20caf700815b39c9bc418f6
Reviewed-on: https://dart-review.googlesource.com/c/83225
Reviewed-by: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-11-06 23:59:11 +00:00
asiva
d29538e808
[VM] Fix for issue 34888
...
Rework the idle notification mechanism to not use the global
IdleNotifier class as it was resulting in lock inversion issues
causing the monitor to be deleted while it could still be
required in another thread.
The new mechanism wires the idle notification check into the existing
message handling loop and uses the 'paused_for_messages_' mechanism
to wake up a idle time waiting handler when new messages arrive.
Bug: 34888
Change-Id: Ifd75e5cf4c0b6944d586146fe518b9e3e053a76e
Reviewed-on: https://dart-review.googlesource.com/c/82705
Commit-Queue: Siva Annamalai <asiva@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2018-11-06 22:37:39 +00:00
Ryan Macnak
f8c89e0d20
[vm] Allow disabling concurrent mark separately from parallel mark.
...
Bug: https://github.com/dart-lang/sdk/issues/34002
Bug: https://github.com/dart-lang/sdk/issues/35029
Change-Id: I3babfd1b8892da5b137f4e093901479797eccfc9
Reviewed-on: https://dart-review.googlesource.com/c/82945
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-06 21:00:28 +00:00
Aart Bik
e585605488
[dart/fuzzer] Ignore output directory option
...
Rationale:
Step towards parallel execution.
Change-Id: I1c6ba3eaa33834d6f4b7ba5489acca567fc00b3d
Reviewed-on: https://dart-review.googlesource.com/c/83041
Reviewed-by: Alexander Thomas <athom@google.com >
Commit-Queue: Aart Bik <ajcbik@google.com >
2018-11-06 17:43:40 +00:00
Martin Kustermann
0fd14324c5
[VM] Use "null" object pool instead of nullptr for empty pools
...
Fixes https://github.com/dart-lang/sdk/issues/35054
Change-Id: I5b852701e1e70d5ab1345625296752208ed06ce7
Reviewed-on: https://dart-review.googlesource.com/c/82983
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2018-11-06 11:38:33 +00:00
Martin Kustermann
cd98dd72f6
[VM] Make all stubs inside the VM isolate share the same pool
...
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: I556272952e6d7846721c6d48ef0ffbae5891cfde
Reviewed-on: https://dart-review.googlesource.com/c/82587
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-06 10:01:03 +00:00
Martin Kustermann
0a9d130bd5
[VM] Add static helper methods to object.h to access RawObject fields without handles
...
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: Ib1a06c21ada1f12f3bc258c9284592c483d260f3
Reviewed-on: https://dart-review.googlesource.com/c/82586
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-06 09:23:59 +00:00
Ryan Macnak
04941b5507
[vm, gc] For large arrays (arrays on a large heap page), use a card-based remembered set.
...
Bug: https://github.com/dart-lang/sdk/issues/30433
Change-Id: I7c710d9e36ab593295d00fc5e9e72a86a1b843af
Reviewed-on: https://dart-review.googlesource.com/c/63688
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-05 22:03:34 +00:00
Zach Anderson
f3d21a8c0d
Revert "Fix bug in TTL logic for IPv6"
...
This reverts commit ffe2116c27 .
Reason for revert: Windows test failures on the bots.
Original change's description:
> Fix bug in TTL logic for IPv6
>
> This was introduced by my previous CL - there is existing logic to set
> the TTL for multicast that works for IPv4 and IPv6, this patch ensures
> the correct call is made.
>
> Change-Id: I8db7325ca79eb38c9de6d6e431231ed2ec1b0f47
> Reviewed-on: https://dart-review.googlesource.com/c/82023
> Reviewed-by: Zach Anderson <zra@google.com >
> Reviewed-by: Siva Annamalai <asiva@google.com >
> Commit-Queue: Zach Anderson <zra@google.com >
TBR=zra@google.com ,asiva@google.com ,dnfield@google.com
Change-Id: I06abb9f1aac638ab31541d66b55a3f5a29b0e5a9
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/82885
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2018-11-05 21:16:45 +00:00
Dan Field
ffe2116c27
Fix bug in TTL logic for IPv6
...
This was introduced by my previous CL - there is existing logic to set
the TTL for multicast that works for IPv4 and IPv6, this patch ensures
the correct call is made.
Change-Id: I8db7325ca79eb38c9de6d6e431231ed2ec1b0f47
Reviewed-on: https://dart-review.googlesource.com/c/82023
Reviewed-by: Zach Anderson <zra@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2018-11-05 19:00:16 +00:00
Ryan Macnak
e89aeb0352
[vm] Fix profiler tests.
...
Bug: https://github.com/dart-lang/sdk/issues/31137
Bug: https://github.com/dart-lang/sdk/issues/33224
Bug: https://github.com/dart-lang/sdk/issues/33337
Bug: https://github.com/dart-lang/sdk/issues/34493
Change-Id: Iedf6eb71416e50129803f7f9ebd7e2036c7583ef
Reviewed-on: https://dart-review.googlesource.com/c/82528
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-05 18:26:02 +00:00
Kevin Moore
475eaee3c2
Cleanup some dynamic/Object promotion confusion from 5226b5c307
...
And make tweaks to Uri and StreamController equality
Change-Id: I63f85f67209442684e50b7c2e0011531893f294e
Reviewed-on: https://dart-review.googlesource.com/c/82781
Reviewed-by: Lasse R.H. Nielsen <lrn@google.com >
Commit-Queue: Kevin Moore <kevmoo@google.com >
2018-11-03 14:05:15 +00:00
Régis Crelier
27127b364a
[DBC simulator] Rename class Bytecode to SimulatorBytecode.
...
This frees the name Bytecode that will become the name of a new VM class.
Class Code will only refer to compiled code and Bytecode will refer to kernel
bytecode.
Change-Id: If64a5d688f0bf75220e67ef2932f4141782e9dc3
Reviewed-on: https://dart-review.googlesource.com/c/82703
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Commit-Queue: Régis Crelier <regis@google.com >
2018-11-02 20:53:24 +00:00
Martin Kustermann
d9d15ee1fc
[VM] Do not trace const functions seperately in AOT compilations, we use kernel2kernel constant evaluation
...
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: I3474ceaca807a03cb3813e97fa47c3e43e495e24
Reviewed-on: https://dart-review.googlesource.com/c/82600
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2018-11-02 13:42:35 +00:00
Martin Kustermann
a01513c685
[VM] Allow including disassembler in product mode if FORCE_INCLUDE_DISASSEMBLER is defined
...
This helps VM developers working with product mode.
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: I1933dea6f2d88c4745c63be772cfe301259f4a9c
Reviewed-on: https://dart-review.googlesource.com/c/82583
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2018-11-02 13:02:25 +00:00
Lasse R.H. Nielsen
5226b5c307
Remove some unnecessary dynamic invocations in the platform libraries.
...
Change-Id: Ia72033e37c4d8292eabd95aeff97e4cb29e81823
Reviewed-on: https://dart-review.googlesource.com/c/82204
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com >
Reviewed-by: Johnni Winther <johnniwinther@google.com >
2018-11-02 11:32:03 +00:00
Ben Konyi
c086064565
[ VM / Gardening ] Mark flaky test get_vm_timeline_test as Pass, Timeout
...
Change-Id: Id13e201e368ceded4adabc466e6c56938d1ff566
Reviewed-on: https://dart-review.googlesource.com/c/82523
Auto-Submit: Ben Konyi <bkonyi@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-11-02 05:35:28 +00:00
Ben Konyi
06c1ee0441
Reland "[ VM ] Delete code for _RegExp._ExecuteMatch and _RegExp._ExecuteMatchSticky before creating an app-jit snapshot."
...
This reverts commit 022d181a4d .
Change-Id: Idcc9d681fea79ded731a49debb5faf88b88ca63c
Reviewed-on: https://dart-review.googlesource.com/c/82527
Commit-Queue: Siva Annamalai <asiva@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Auto-Submit: Ben Konyi <bkonyi@google.com >
2018-11-02 05:28:43 +00:00
Ben Konyi
022d181a4d
Revert "[ VM ] Delete code for _RegExp._ExecuteMatch and _RegExp._ExecuteMatchSticky before creating an app-jit snapshot."
...
This reverts commit 428a832a4b .
Change-Id: I7fb7dde39fd7575fb8885850007ca155b24b308e
Reviewed-on: https://dart-review.googlesource.com/c/82541
Reviewed-by: Ben Konyi <bkonyi@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-11-01 23:01:43 +00:00
asiva
a0fa94618a
[VM] Turn off idle notification in the command line VM as we have a race
...
condition that is causing intermittent crashes. The fix for the race is
a bit involved as it requires changing the IdleNotifier class to avoid
the lock inversion issue.
Change-Id: Id724276a68567e48297bd086d828abee63d129ee
Reviewed-on: https://dart-review.googlesource.com/c/82525
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Siva Annamalai <asiva@google.com >
2018-11-01 22:02:10 +00:00
Ben Konyi
2f059cd26d
[ VM / Service ] Alphabetize RPC entries
...
Change-Id: Ic6a6348cbc5a649d7ba2f4c94f8b6d9b467351f8
Reviewed-on: https://dart-review.googlesource.com/c/82520
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ben Konyi <bkonyi@google.com >
2018-11-01 21:21:50 +00:00
Zach Anderson
c4df463ba9
[vm] Reland kernel data library and class caches.
...
This is the same code as the previous commit, but it needs a fix
for issue #34953 to land first.
Change-Id: Id586f5e8a5ee498716e58ff44bb8a344822f73df
Reviewed-on: https://dart-review.googlesource.com/c/81840
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Zach Anderson <zra@google.com >
2018-11-01 20:25:59 +00:00
Ben Konyi
428a832a4b
[ VM ] Delete code for _RegExp._ExecuteMatch and _RegExp._ExecuteMatchSticky before creating an app-jit snapshot.
...
Fixes issue #34422 , where evaluating a RegExp on Windows during the
kernel isolate startup would crash when the '--interpret_irregexp' flag
was passed.
Change-Id: I4e8cd6a17973203b56ba0684a36a61b060f99670
Reviewed-on: https://dart-review.googlesource.com/c/82300
Commit-Queue: Ben Konyi <bkonyi@google.com >
Auto-Submit: Ben Konyi <bkonyi@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
2018-11-01 20:07:04 +00:00
Ryan Macnak
80317f1c09
[vm, gc] Missing piece from "Enable concurrent marking on Android/iOS."
...
TBR=asiva
Bug: https://github.com/dart-lang/sdk/issues/34002
Change-Id: Ie2ddc4bbb6313cb4156eb1d8720c82d69d06a2ab
Reviewed-on: https://dart-review.googlesource.com/c/82468
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-01 19:37:11 +00:00
Daco Harkes
1a3bca5485
[vm] Use atomic release-acquire operations to update RawICData::ic_data_
...
Background compiler expects to see fully initialized array when it
reads RawICData::ic_data_ array - which previously was not
guaranteed on architectures with weak memory model.
Fixes https://github.com/dart-lang/sdk/issues/34999
Change-Id: Ie9544d7fc4683fb5cb145aa1a572e8939bd8dc13
Reviewed-on: https://dart-review.googlesource.com/c/82442
Commit-Queue: Daco Harkes <dacoharkes@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-01 18:29:05 +00:00
Ben Konyi
7c0b225666
[ VM / Service ] Added 'getScripts' RPC.
...
'getScripts' returns a 'ScriptList' object which represents all loaded
scripts for the isolate. This is the fix for issue 30061 and b/115567301.
Change-Id: I41248e97cb78a39d286020c7fdd7ee72f0cc55db
Reviewed-on: https://dart-review.googlesource.com/c/82360
Commit-Queue: Ben Konyi <bkonyi@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Auto-Submit: Ben Konyi <bkonyi@google.com >
2018-11-01 17:44:30 +00:00
Ryan Macnak
a651838652
[vm] Fix misc printf format bugs.
...
Bug: https://github.com/dart-lang/sdk/issues/35009
Change-Id: I6b509e1eb8e76e07f60a086c67358d65d2a1fae4
Reviewed-on: https://dart-review.googlesource.com/c/82460
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-01 16:37:22 +00:00
Ryan Macnak
97940e77a4
[vm, compiler] Remove use of StoreIntoObject for arrays from hand-written assembly.
...
- Convert _List.[]= and _List._setIndexed to graph intrinsics.
- Remove _GrowableList.add intrinsics (dead since Dart 2).
Eliminates need to shuffle registers at the assembler level when introducing card-remembering.
Change-Id: Ia94ae3229a5eb90215ac74ab624db843a0cda01c
Reviewed-on: https://dart-review.googlesource.com/c/82380
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-01 16:30:28 +00:00
Ryan Macnak
cd44af1a14
[vm, compiler] ARM64 has 32 registers, not 16.
...
Change-Id: I58fcdb00e0d8244d1437b218d682991c484b8313
Reviewed-on: https://dart-review.googlesource.com/c/82401
Reviewed-by: Zach Anderson <zra@google.com >
Reviewed-by: Régis Crelier <regis@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-11-01 16:29:19 +00:00
Martin Kustermann
f4242296c4
[VM] Go back to using c++11 feature, do not use c++14 feature due to 3head builder failing
...
Change-Id: I80d898bc1e196656570c853e123d026111bccf29
Reviewed-on: https://dart-review.googlesource.com/c/82446
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
Auto-Submit: Martin Kustermann <kustermann@google.com >
2018-11-01 15:58:08 +00:00
Martin Kustermann
b0b7cdb3da
[VM] Add ArrayView class to access [Array]s which are treated as lists of tuples in a type-safe way
...
Change-Id: I0c356ba01bf3fc362d6e353285ddda7c21d56de4
Reviewed-on: https://dart-review.googlesource.com/c/81823
Commit-Queue: Martin Kustermann <kustermann@google.com >
Auto-Submit: Martin Kustermann <kustermann@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-01 15:09:49 +00:00
Martin Kustermann
eecf927fba
[VM] Move mapping "RawInstruction -> offset" mapping into ImageWriter
...
This makes the ImageWriter remember at which offsets it wrote
RawInstructions.
This is preparation work for allowing the ImageWriter write the
instructions in a specific order (currently instructions are written
"on-demand" when the object serializer encounters references to them)
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: Ie50cf8a600dd4e9ce0413fe4189d4f2211f0325e
Reviewed-on: https://dart-review.googlesource.com/c/82065
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-01 14:22:37 +00:00
Martin Kustermann
ffbf6b9e61
[Gardening] Mark vm/dart/appjit_cha_deopt_test as slow in debug mode
...
Change-Id: I169ac1a39512f1050819270146d27ec92c95b9f1
Reviewed-on: https://dart-review.googlesource.com/c/82443
Reviewed-by: Martin Kustermann <kustermann@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
Auto-Submit: Martin Kustermann <kustermann@google.com >
2018-11-01 13:34:49 +00:00
Martin Kustermann
9b9a035154
[VM] Add PcRelativeCall / PcRelativeJump patterns & assembler support
...
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: I0297c4bb502a1af28e3cf16646eade49f4cd0676
Reviewed-on: https://dart-review.googlesource.com/c/81827
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-11-01 12:34:42 +00:00
Martin Kustermann
29396606c8
[VM] Allow Code::object_pool() to be 'null', refactor some code in precompiler.cc
...
This is preparation work for a global object pool, which will not be attached
to the Code objects.
Issue https://github.com/dart-lang/sdk/issues/33274
Change-Id: Ia1746ea657fe6d8e9adb7552d6835425ff65542c
Reviewed-on: https://dart-review.googlesource.com/c/82064
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
Commit-Queue: Martin Kustermann <kustermann@google.com >
2018-11-01 11:59:44 +00:00
Ryan Macnak
fa4fdcefb0
[vm, gc] Enable concurrent marking on Android/iOS.
...
On a Flutter app scrolling through a large table running on a Moto G 4, max pause time reduces from 129ms to 52ms.
Before
6-44ms CollectNewGeneration
118-129ms CollectOldGeneration
After
6-52ms CollectNewGeneration
3-10ms StartConcurrentMarking
20-42ms CollectOldGeneration (i.e., finalize marking)
Code size increases on Flutter Gallery:
ARM32 Instructions(CodeSize): 5772688 -> 5968624 (+3.39%)
ARM64 Instructions(CodeSize): 6082400 -> 6251008 (+2.77%)
Bug: https://github.com/dart-lang/sdk/issues/34002
Change-Id: Iac9a0b3d91b497b5016c4f89e8779c488f105a5b
Reviewed-on: https://dart-review.googlesource.com/c/76780
Reviewed-by: Siva Annamalai <asiva@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-10-31 20:34:25 +00:00
Ryan Macnak
7514ce941e
[vm] Assert handles are only allocated when the thread is preventing safepoints.
...
Threads in the native or blocked states don't prevent safepoints, so they may run concurrently with a safepoint operation like GC. It is not safe for handles to be allocated while the GC is visiting them, so these threads must not allocate handles. Assert only threads in the VM or generated states, which prevent safepoints until they check in, may allocate handles. (Generated code does not allocate handles, but leaf runtime entries remain in the generated state.)
Bug: https://github.com/dart-lang/sdk/issues/34883
Change-Id: I1a211778f7ef96b53a2405f0ee9dde7871b122b6
Reviewed-on: https://dart-review.googlesource.com/c/81540
Commit-Queue: Ryan Macnak <rmacnak@google.com >
Reviewed-by: Siva Annamalai <asiva@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-10-31 19:51:52 +00:00
Lasse Reichstein Holst Nielsen
26121608a1
Make DateTime not assume arguments are instances of the same class.
...
The current DateTime class takes DateTime objects as arguments,
and then tries to access private members.
That does not work if someone else implements the DateTime interface.
Fixes #34962
BUG= http://dartbug.com/34962
Change-Id: I7191fe42f5b6efc1c7da5ed8e22b892b18f872f7
Reviewed-on: https://dart-review.googlesource.com/c/81828
Reviewed-by: Leaf Petersen <leafp@google.com >
Reviewed-by: Stephen Adams <sra@google.com >
Commit-Queue: Lasse R.H. Nielsen <lrn@google.com >
2018-10-31 07:29:48 +00:00
Ryan Macnak
2085277771
[vm, reload] On the path for no shape changes, defer freeing the old class table until the next safepoint.
...
Compare the reload rollback path.
Bug: https://github.com/dart-lang/sdk/issues/34888
Change-Id: I5b9e7cd8392f9c9d61df31481956a9fa67435b33
Reviewed-on: https://dart-review.googlesource.com/c/81940
Reviewed-by: Zach Anderson <zra@google.com >
Commit-Queue: Ryan Macnak <rmacnak@google.com >
2018-10-30 21:53:54 +00:00
Vyacheslav Egorov
c413b61969
[testing] Improvements to crash dump archiving
...
* On Windows dump stacks from all collected dumps into the output so
that one would not need to download the dump to analyse it.
* Document crash dump archiving so that engineers know where to look
for dumps and how look at them.
Change-Id: Ibf53bb597c07702b3e051cf24bea8f6bfb1d5e8f
Reviewed-on: https://dart-review.googlesource.com/c/82066
Commit-Queue: Vyacheslav Egorov <vegorov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
Auto-Submit: Vyacheslav Egorov <vegorov@google.com >
2018-10-30 20:41:03 +00:00
Régis Crelier
98a0309fbd
[VM compiler] Reuse function type arguments to avoid instantiation at runtime, when possible.
...
Change-Id: Icfcbd165bb96cf83b7911c6c11a7daca17c6ba12
Reviewed-on: https://dart-review.googlesource.com/c/81701
Commit-Queue: Régis Crelier <regis@google.com >
Reviewed-by: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Martin Kustermann <kustermann@google.com >
2018-10-30 18:38:37 +00:00
Martin Kustermann
70abec503d
[VM] Reland "[VM] Extract common code from Assembler to new AssemblerBase base class"
...
This reverts commit 04381d7571 .
Closes https://github.com/dart-lang/sdk/issues/34973
Change-Id: I843c3fe4cc8265fb43b6b09623e7509837a878f0
Reviewed-on: https://dart-review.googlesource.com/c/82041
Commit-Queue: Martin Kustermann <kustermann@google.com >
Reviewed-by: Vyacheslav Egorov <vegorov@google.com >
2018-10-30 12:00:22 +00:00
Alexander Aprelev
04381d7571
Revert "[VM] Extract common code from Assembler to new AssemblerBase base class"
...
This reverts commit 388c41de94 as it
breaks appjit_determinism_test on arm.
Bug: dartbug.com/34973
Change-Id: I25e995d3c4c8a77f2f3b681ed717adc4f723d86c
Reviewed-on: https://dart-review.googlesource.com/c/82000
Reviewed-by: Alexander Aprelev <aam@google.com >
Commit-Queue: Alexander Aprelev <aam@google.com >
2018-10-29 23:08:34 +00:00
Alexander Markov
346f5369e4
[vm] Cleanup _int64 marker interface
...
Closes https://github.com/dart-lang/sdk/issues/34955
Change-Id: I7323e17374bfdc11d7869e4713c2818927bc4c71
Reviewed-on: https://dart-review.googlesource.com/c/81880
Commit-Queue: Alexander Markov <alexmarkov@google.com >
Auto-Submit: Alexander Markov <alexmarkov@google.com >
Reviewed-by: Zach Anderson <zra@google.com >
Reviewed-by: Ryan Macnak <rmacnak@google.com >
2018-10-29 23:01:44 +00:00