Lasse R.H. Nielsen
5a843ebbf3
Add "checked" parameter to Isolate.spawnUri.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//1154673004
2015-06-03 12:32:52 +02:00
Srdjan Mitrovic
defec9c960
--check_function_fingerprints is available only in dart_no_snapshot, i.e., it was not tested. Make it default true, catch failure at build time then
...
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org//1166813002
2015-06-02 16:36:54 -07:00
Ivan Posva
63558e911e
- Make sure to properly check for errors from sysctlbyname.
...
BUG=
Review URL: https://codereview.chromium.org//1150173004
2015-06-02 23:22:24 +02:00
Ryan Macnak
a754930be6
Remove unused field map_ from LinkedHashMap::Iterator.
...
TBR=koda@google.com
Review URL: https://codereview.chromium.org//1162363003
2015-06-02 12:33:28 -07:00
Ryan Macnak
eca0d72abe
Provide a logical view of VM-internal maps in Observatory.
...
BUG=http://dartbug.com/20551
BUG=http://dartbug.com/21185
R=koda@google.com
Review URL: https://codereview.chromium.org//1150103005
2015-06-02 11:38:39 -07:00
Daniel Andersson
6090af8f0b
Serialize maps without hashes.
...
Re-generate the indices after deserialization.
This is a more compact representation, and also fixes the issue with identity hash codes not being portable between isolates.
BUG=21675
R=asiva@google.com
Review URL: https://codereview.chromium.org//1151013005
2015-06-02 09:04:37 -07:00
Daniel Andersson
bf8ccee760
Use kSmiBits rather than #ifdef to define hash map constant.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//1160963002
2015-06-02 06:00:28 -07:00
Ryan Macnak
98999e6a02
Misc Observatory patches:
...
- Address some editor hints.
- Place eval box above fields and be much more generous in expanding fields.
- Treat maps as plain instances so their refs aren't blank.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1159783004
2015-06-01 14:59:54 -07:00
Srdjan Mitrovic
b611952ead
Prevent excessive deoptimization when optimistically assuming Smi in typed data stores.
...
Moved ICData ahead of class Function, since class Function needs type ICData::DeoptReasonID.
BUG=
R=fschneider@google.com
Review URL: https://codereview.chromium.org//1149403005
2015-06-01 11:42:42 -07:00
Todd Turnidge
f6d3d4681d
Rename some service protocol errors.
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1164463005
2015-06-01 09:26:54 -07:00
John McCutchan
864f9a3c9b
Cap the number of pending accepts on Windows
...
BUG=
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//1151753008
2015-06-01 06:38:22 -07:00
Ivan Posva
ccf44becd2
- Use #if defined(DEBUG)
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1152773003
2015-05-29 17:43:36 -07:00
Ryan Macnak
4102b0c446
Canonicalize mixin type during class finalization. Add asserts that most types are canonical.
...
R=regis@google.com
Review URL: https://codereview.chromium.org//1167583002
2015-05-29 15:29:04 -07:00
Ivan Posva
8f1506e817
- Determine whether the simulator is being used in globals.h
...
- Make sure to switch on HOST_ARCH_ and on USING_SIMULATOR
where appropriate.
- Avoid allocating in new generation when running in the VM isolate.
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org//1156053006
2015-05-29 14:35:29 -07:00
Ryan Macnak
c6ebef9526
Address hints in the Observatory.
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//1161553013
2015-05-29 13:42:31 -07:00
Regis Crelier
601da25b92
Fix issue 23500
...
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org//1146993003
2015-05-29 13:31:16 -07:00
Todd Turnidge
8adf7de6d1
Introduce Instance.kind.
...
Use this instead of subclassing Instance in the service protocol.
Revise many instance property names.
BUG=
R=johnmccutchan@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org//1162133002
2015-05-29 13:02:36 -07:00
Siva Annamalai
7af681ead9
Fix for issue 23547, return an proper ApiError instead of a string when we report outstanding typed data acquire errors.
...
BUG=23547
R=koda@google.com
Review URL: https://codereview.chromium.org//1156993012
2015-05-29 11:13:33 -07:00
Daniel Andersson
092d27cf34
Remove serializer whitelisting for 'dart:collection'
...
Since LinkedHashMap is now VM-internal, this exception is no longer needed.
BUG=22982
R=asiva@google.com
Review URL: https://codereview.chromium.org//1149933007
2015-05-29 09:17:55 -07:00
Srdjan Mitrovic
d7d0d92ec3
Do not eagerly add guarded leaf classes with CHA; do not add them for private names.
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1158673004
2015-05-29 08:57:34 -07:00
Lasse R.H. Nielsen
babcd4e9c0
Revert "Make EfficientLength public, as EfficientLengthIterable."
...
It's still not a good solution for detecting an Iterable with an efficient
length. It's not inherited by, e.g., a DelegatingIterable wrapper or similar
generic Iterable transformers.
Keep this as an internal optimization for quickly detecting the most common
efficient-length Iterable classes (List, Set, Queue, Map.keys/values), but
don't make it public.
A *real* solution would be adding a hasEfficientLength getter to Iterable, or
adding an efficientLength getter that may return null if it's not efficient.
This would something that a wrapper can attach to.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//1154263003
2015-05-29 12:52:45 +02:00
Florian Schneider
88d316fbc0
VM: Fix two incorrect function fingerprints.
...
The checking code was broken for a while, so this mismatch was not noticed.
BUG=
R=vegorov@google.com
Review URL: https://codereview.chromium.org//1156423002
2015-05-29 12:20:09 +02:00
Lasse R.H. Nielsen
cf4eaae5a6
Change RangeError instances to use RangeError.range.
...
This avoids using the (sometimes confusing) "[...)" notation for half-open ranges.
Also change argument tests to simpler interval tests, and move error handling to the end of the functions.
Mostly in VM typed-data libraries.
R=sgjesse@google.com , srdjan@google.com
Committed: https://github.com/dart-lang/sdk/commit/932bcc6901d70492c6f1b8d000b9555a0db62f4b
Review URL: https://codereview.chromium.org//1132603003
2015-05-29 10:50:20 +02:00
Todd Turnidge
67adc6102d
Add getVersion and setLibraryDebuggable RPCs to the service protocol.
...
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1149373006
2015-05-28 13:34:23 -07:00
Daniel Andersson
74d511396e
Revert 'Revert to use macro REG_MASK_BIT, now with parentheses.'
...
Turns out some compilers are allergic to negative shifts, even if it will obviously not be executed.
BUG=
Review URL: https://codereview.chromium.org//1160973002
2015-05-28 13:24:00 -07:00
Daniel Andersson
df2d1c426b
Revert to use macro REG_MASK_BIT, now with parentheses.
...
R=whesse@google.com
Review URL: https://codereview.chromium.org//1153893005
2015-05-28 13:03:37 -07:00
Ryan Macnak
2764bcefba
Give structured information about imports and export in the service's library response.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1160943002
2015-05-28 11:37:20 -07:00
Todd Turnidge
ab6b2218b0
Standardize on using "kind" to distinguish sub-varieties of a type.
...
- Event.eventType -> Event.kind.
- Sentinel.id -> Sentinel.kind.
We were already doing this for Code and will do so for Instance in
an upcoming cl.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1153193006
2015-05-28 11:04:32 -07:00
Srdjan Mitrovic
87cf4a4a76
Typo; fix windows build
...
BUG=
Review URL: https://codereview.chromium.org//1154423007
2015-05-28 10:32:03 -07:00
Todd Turnidge
3d02f21309
Service protocol cleanups.
...
- ServiceEvent -> Event, protocol only.
- Use camel-case for StepOption
- Hide FlagType but make it camel-case too.
BUG=
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//1156803003
2015-05-28 10:24:09 -07:00
Srdjan Mitrovic
ed73a3d151
With --noopt run unoptimized code through optimizer, more optimizations can be done later.
...
BUG=
R=fschneider@google.com
Review URL: https://codereview.chromium.org//1149713002
2015-05-28 10:05:46 -07:00
Daniel Andersson
ea46192ca3
VM-internalize the default Map implementation.
...
Make the compact linked hash map, which is the default implementation for Map
(including map literals), a VM-internal class.
This makes it easy to have more efficient serialization of maps (although for
now, the implementation is straight-forward).
Refactor the compact hash class hierarchy to enable the VM-internal class and
the rest (also the Set classes) to share a maximal amount of code, by using
two different bases for implicit/explicit fields.
Remove existing proof-of-concept, C++-based internal VM-class.
BUG=http://dartbug.com/22982
R=asiva@google.com
Review URL: https://codereview.chromium.org//1151523002
2015-05-28 09:32:54 -07:00
Srdjan Mitrovic
e68d22ce1e
Do not emit debug check in optimized IC stubs
...
BUG=
R=fschneider@google.com
Review URL: https://codereview.chromium.org//1145063003
2015-05-28 09:32:12 -07:00
Todd Turnidge
563083696c
Sundry service protocol cleanups before version 1.0.
...
Frame.depth -> Frame.index
Message.depth -> Message.index
Remove Message.type
Message.priority becomes private
frame -> frameIndex for evaluateInFrame
Class.finalized, Class.implemented, Class.patch Class.allocationStats become private
Instance.nativeFields becomes private
Field.value moves out of "ref" into full object
Field.value -> Field.staticValue
Move Function.static, Function.const to "ref"
Make Script.kind private in docs
Make Function.kind private
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1160873002
2015-05-28 09:30:55 -07:00
Florian Schneider
7759c171ed
VM: Fix nosnapshot build
...
This makes --check-function-fingerprints work again.
BUG=
R=vegorov@google.com
Review URL: https://codereview.chromium.org//1161473003
2015-05-28 15:12:20 +02:00
Florian Schneider
e0621416f8
Remove unused pc descriptor types.
...
kClosureCall and kOptStaticCall are not needed anymore.
Closure calls are implemented as instance calls - the ClosureCall instruction
only occurs in the synthetic FunctionImpl.call dispatcher - and does not correspond
to a source location where breakpoints can be set.
kOptStaticCall is not needed because breakpoints can only be set in unoptimized
code. kOther is used instead.
This also removes an unused PC descriptor at closure calls from unoptimized
code.
BUG=
R=vegorov@google.com
Review URL: https://codereview.chromium.org//1160063002
2015-05-28 14:27:37 +02:00
Lasse R.H. Nielsen
9e175d27d7
Revert "Change RangeError instances to use RangeError.range."
...
Method hashes needs to be updated.
Review URL: https://codereview.chromium.org//1160903002
2015-05-28 10:46:15 +02:00
Lasse R.H. Nielsen
932bcc6901
Change RangeError instances to use RangeError.range.
...
This avoids using the (sometimes confusing) "[...)" notation for half-open ranges.
Also change argument tests to simpler interval tests, and move error handling to the end of the functions.
Mostly in VM typed-data libraries.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//1132603003
2015-05-28 10:34:03 +02:00
Florian Schneider
96e4c4d3c6
VM: Fix bugs with missing deoptimization environment and int32x4 constructor
...
It can occur that we don't have exact type information at UnboxUint32 instructions,
but range information concludes that the instruction can't deoptimize. In this case,
we can assume the input must be a smi or mint if the range fits into mint range.
The generated coe for this case was missing on x64 and arm64. It was already added
for ia32, ARM and MIPS (see https://codereview.chromium.org//770303002 )
The optimized instruction of the Int32x4 constructor was incorrectly using uint32 as
input representation, instead of int32.
R=iposva@google.com , vegorov@google.com
Review URL: https://codereview.chromium.org//1148943004
2015-05-28 10:09:49 +02:00
Ivan Posva
0358f722ba
- Include original, loaded URI in error message.
...
- Update error string comparison in pub.
BUG=
Review URL: https://codereview.chromium.org//1156983003
2015-05-28 00:14:39 -07:00
Ryan Macnak
7c02eae5ec
Actually use canonicalized parameter and return types.
...
149.4kB -> 43.5kB (-70%) of Type, TypeArgument and TypeParameter in hello world
R=regis@google.com
Review URL: https://codereview.chromium.org//1162513002
2015-05-27 18:11:44 -07:00
Ivan Posva
42257ab482
- Avoid trying to write to final fields.
...
BUG=
Review URL: https://codereview.chromium.org//1154213006
2015-05-27 17:44:41 -07:00
Srdjan Mitrovic
fc3cd69c05
Load deferred classes eagerly when generating script snapshots
...
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org//1155183003
2015-05-27 17:11:35 -07:00
Ivan Posva
2abc21a1bf
- Avoid using a streamed receive port for single messages.
...
- Only open a single receive port for a set of load requests.
- Store information about load requests in a map, which will be able to hold
other relevant information about the request.
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org//1154173006
2015-05-27 16:59:43 -07:00
Regis Crelier
1761a60735
Fix restoring of async try context in catch clause (issue 23498).
...
Add regression test.
Merge branch 'master' into dart1
Fix issue 23498
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org//1160663004
2015-05-27 13:58:57 -07:00
Ryan Macnak
13592ca9b7
Fix use-after-free deleting from linked list.
...
TBR=koda@google.com
Review URL: https://codereview.chromium.org//1151263004
2015-05-27 13:22:05 -07:00
Srdjan Mitrovic
91651f8805
Remove value check from ICData checks/house-keeping
...
BUG=
R=johnmccutchan@google.com , vegorov@google.com
Review URL: https://codereview.chromium.org//1153963002
2015-05-27 13:17:28 -07:00
Todd Turnidge
95dc56e27e
Make several service protocol RPCs private.
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1159003002
2015-05-27 11:25:56 -07:00
Todd Turnidge
38ef2ac7e1
Emit json-rpc version in service protocol responses.
...
BUG=
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//1147913004
2015-05-27 10:42:56 -07:00
Ryan Macnak
74dfae69e3
Reapply "Per-closure breakpoints; restructure breakpoint implementation to keep a list of conditions."
...
Fix copying breakpoints over to a new location when a latent location is resolved.
Fix bad assumption that BreakpointLocationAtLine always returns non-null result.
Review URL: https://codereview.chromium.org//1149983003
2015-05-27 09:59:33 -07:00