hausner@google.com
2f0d13af3b
Fix yield statements in catch blocks
...
This is a partial fix for issue 22300. The VM no longer setfaults when
using yield in try statements. Yield in catch blocks work. What’s still
not working right is if a value is yielded before an exception is
propagated to the caller.
R=regis@google.com
Review URL: https://codereview.chromium.org//914303006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43707 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-12 00:12:07 +00:00
asiva@google.com
ea16b41a0b
Fix race condition an isolate is being added to the isolate list before the name for the isolate is setup, the service isolate starts registering the isolate and accesses the name which is NULL.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//918823002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43706 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-11 23:39:43 +00:00
regis@google.com
163f1c2244
Improve _toInt64() and _toUint64() conversions in TypedData.
...
Add missing conversions of exponent and modulus in Bigint.modPow().
Fix typos in Bigint Classic reduction (modPow tests coming in later cl).
Address a few more TODOs.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//916153002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43697 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-11 20:57:33 +00:00
fschneider@google.com
f7a97fa4d4
VM: Fix slow-path deoptimization environment.
...
The number of pushed arguments needs to be accounted for.
BUG=dartbug.com/22331
R=vegorov@google.com
Review URL: https://codereview.chromium.org//914133002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43681 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-11 13:34:15 +00:00
rmacnak@google.com
4de5f89b99
Rename IsConstructor to IsGenerativeConstructor.
...
This matches the terminology in the spec, and it avoids confusion with the function kind kConstructor, which indicates either a generative constructor or a factory constructor.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//910313002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43673 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-11 00:59:19 +00:00
asiva@google.com
58c14696fb
Fix a windows build issue
...
../../dart/runtime/vm/flags.cc:58:26: error: invalid suffix on literal; C++11 requires a space between literal and identifier [-Wreserved-user-defined-literal]
OS::Print("%s: %"Pu64" (%s)\n", name_, *this->uint64_ptr_, comment_);
R=regis@google.com
Review URL: https://codereview.chromium.org//909253002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43669 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 21:30:28 +00:00
hausner@google.com
8e7752f56b
Fix bug in processing of latent breakpoints
...
Debugger hangs when encountering a url that has no match
in any of the loaded libraries.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//872643008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43662 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 19:11:56 +00:00
koda@google.com
c2da2d9830
Make ASAN/MSAN ignore Dart frames.
...
Frames initialized by generated code are unknown to ASAN/MSAN, so we must explicitly mark it as initialized.
For some (unknown) reason, this only caused failures on the build bot.
TBR=asiva@google.com
Review URL: https://codereview.chromium.org//915723002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43661 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 18:43:27 +00:00
regis@google.com
d50fe1db24
Make instruction counter in simulators 64-bit (issue 22302).
...
This requires supporting uint64_t flag values.
R=zra@google.com
Review URL: https://codereview.chromium.org//898093003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43660 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-10 17:41:01 +00: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
420aa94c56
Split profiler.cc into profiler.cc and profiler_service.cc
...
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org//864173008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43623 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 23:22:19 +00:00
srdjan@google.com
81d8099650
Redesign inlining interval computation.
...
Review URL: https://codereview.chromium.org//904763003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43622 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 23:11:05 +00:00
johnmccutchan@google.com
23763129a5
Fix missing new lines in disassembly
...
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org//908853005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43621 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 22:58:16 +00:00
turnidge@google.com
e1f31e1513
Add a working command line debugger to Observatory.
...
Try it!
Review URL: https://codereview.chromium.org//866663003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43618 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 22:03:31 +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
ddbefcab7e
Fix disassembly comments
...
BUG=
Review URL: https://codereview.chromium.org//914463002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43610 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 20:57:41 +00:00
johnmccutchan@google.com
635ba4bbd9
Port flow_graph*, disassembler to ISL_Print
...
BUG=
R=srdjan@google.com
Review URL: https://codereview.chromium.org//907093002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43609 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 20:49:32 +00:00
johnmccutchan@google.com
fee26a9bbb
Fix Linux build
...
BUG=
Review URL: https://codereview.chromium.org//901303005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43605 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 19:06:55 +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
vegorov@google.com
e5f3e69eeb
Add --print-flow-graph-filter to allow filtering debugging output.
...
Extend filtering pattern with % symbol: xyz% matches names that end at "...xyz".
R=fschneider@google.com
BUG=
Review URL: https://codereview.chromium.org//905363002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43598 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 16:26:46 +00:00
fschneider@google.com
56853c6bc9
Undo unnecessary changes to ARM assembler.
...
R=zra@google.com
Review URL: https://codereview.chromium.org//885443012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43596 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 16:14:11 +00:00
fschneider@google.com
df94b27666
VM: Align implementations of assembler constant pools.
...
Add Support for adding patchable/non-patchable entries on ARM/MIPS like
already done for x64/ARM64.
R=vegorov@google.com
Review URL: https://codereview.chromium.org//886173003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43589 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-09 11:47:36 +00:00
regis@google.com
62a1d34c36
Clarify result returned by remainder intrinsics.
...
R=zra@google.com
Review URL: https://codereview.chromium.org//905653004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43576 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 22:42:53 +00:00
koda@google.com
f3387ccc3f
In this first version, we just track the set of objects and verify that calls to release match. The next step is to copy the data to a side buffer, which is then unmapped on release to catch use-after-release bugs.
...
Explicitly disallow nested acquires, since the visibility of writes would depend on whether data is acquired in-place.
Also explicitly disallow other access to the data (e.g., trough list accessors) for the same reason.
R=asiva@google.com
Review URL: https://codereview.chromium.org//905823002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43575 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 22:31:46 +00:00
koda@google.com
0edad1cc7c
Fix Dartium DEBUG failures by ensuring proper scoping within GC prologue/epilogue.
...
This ensures that the zone-allocating parts of ScavengeVisitor and MarkingVisitor are destroyed before the Dartium GC epilogue deletes the zone in which they were allocating.
(This only explains DEBUG mode failures, caused by the zapping in the GrowableArray destructor, because the values of the arrays are not used after the epilogue runs.)
BUG=dart:22224
R=asiva@google.com
Review URL: https://codereview.chromium.org//896133003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43558 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 17:38:39 +00:00
koda@google.com
253de5e60a
Fix race condition in Redirection global list using CAS.
...
Note that a simple Mutex cannot be used, since the profiler may interrupt the thread at any point, and also walks this list.
Review URL: https://codereview.chromium.org//898123002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43557 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 15:50:08 +00:00
iposva@google.com
6898a10c93
- Make sure to fail early if an non-stacktrace is passed into the VM
...
where we expect one.
Review URL: https://codereview.chromium.org//908433002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43546 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 09:23:57 +00:00
koda@google.com
96bed4dd79
Add missing call to VerifiedMemory::Accept when initializing Smi field.
...
BUG=dart:22224
R=asiva@google.com
Review URL: https://codereview.chromium.org//898453009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43533 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-06 00:02:29 +00:00
hausner@google.com
00366dcfa1
Fix Windows build
...
Review URL: https://codereview.chromium.org//903843002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43522 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 21:00:02 +00:00
hausner@google.com
a28a13d936
Attempt to fix the Windows build
...
Review URL: https://codereview.chromium.org//901263002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43518 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 19:33:37 +00:00
terry@google.com
06f06cd029
Fixed Window's Debug warning, results in compilation failure.
...
Reviewers=asiva@google.com
R=asiva@google.com
Review URL: https://codereview.chromium.org//904603003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43517 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 19:30:16 +00:00
hausner@google.com
2487c76886
Add support for sync* and yield and yield*
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//888463004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43516 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 18:36:40 +00:00
turnidge@google.com
d554f4fbfe
Finish moving service protocol to json rpc.
...
Service
- Remove support for old-style service requests.
- Drop 'arguments' from JsonStream and ServiceRequestHandler.
- Json-rpc inspired renaming: command->method, options->params all over.
- Implement getFlagList, setFlag, getObjectByAddress.
- Add helpers PrintMissingParamError and PrintInvalidParamError
to make our error messages more regular.
- Update tests.
- Service_SetSource removed for now. John will resurrect.
Observatory
- Drop all Deprecated 'get' functions. We now use json rpc for everything.
- Drop 'link' and 'relativeLink' from ServiceObject -- they were
ui-specific and they are no longer meaningful anyways. Use 'id' instead.
- New pages: VMPage, FlagsPage, InspectPage, ErrorPage. All urls
used by Observatory are now 'new school' and have a proper
prefix. ErrorPage is the new catch-all.
- Pages now use a Uri instead of a url String. This lets them
grab query parameters more easily.
- SimplePage replaces IsolateSuffixPage.
- We now use gotoLink() or makeLink() to make our navigation
links. gotoLink gets some optional parameters to make it
easier to construct links to ServiceObjects.
- Rework mouse clicks on the heap map to use getObjectByAddress.
- Remove the breakpoint_list. It wasn't working. I'll add it back later.
- Silence logging of getIsolateMetric/getVMMetric.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//897193002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43514 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 17:45:52 +00:00
fschneider@google.com
2727257bf8
VM: Fix source location in stack trace of async code.
...
This eliminates an invalid source position and allows async code
to work with the stack_traces package to a get full async stack chain.
Frames with an invalid location (file.dart:1:1) are now printed without
line/column information (file.dart)
BUG=dartbug.com/22009
R=iposva@google.com
Review URL: https://codereview.chromium.org//904443002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43497 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-05 10:26:27 +00:00
regis@google.com
a5ee233d1b
Make Bigint instances immutable by removing all setters.
...
This required rewriting a large portion of bigint.dart.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//842033005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43492 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 23:56:23 +00:00
johnmccutchan@google.com
1426cfc03b
Port metrics to RPC
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//886353006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43486 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 21:27:49 +00:00
zra@google.com
1299ad1485
Allows turning on checked mode on a per-isolate basis
...
using the embedding API.
R=regis@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//883263004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43481 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 18:32:48 +00:00
zerny@google.com
e449cd0329
Propagate the stack trace of the inner-most throw when using async/await.
...
This patch does not provide a full async stack trace, it only ensures
that the inner-most stack frame will be the point of the initial throw.
BUG=http://dartbug.com/22009
R=iposva@google.com
Review URL: https://codereview.chromium.org//893193004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43463 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-04 11:54:23 +00:00
johnmccutchan@google.com
d9e951d5a3
Port _echo, etc commands to RPC
...
BUG=
R=turnidge@google.com
Review URL: https://codereview.chromium.org//869773007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43447 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 23:17:05 +00:00
turnidge@google.com
91afcbdfc9
Rename the get* methods in preparation for removing them.
...
Add proper caching to getObject, etc.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//892913003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43431 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 21:47:39 +00:00
johnmccutchan@google.com
9d1bb3aa6b
Port type arguments to new RPC protocol
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//887413003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43428 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 21:26:19 +00:00
turnidge@google.com
3fbbf4edc2
Support root-level json rpc requests in the vm service.
...
Add getVM and getIsolate rpcs.
Add support for Code objects to getObject.
Begin using getVM, getIsolate, and getObject in the Observatory.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//895943002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43423 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 20:31:11 +00:00
johnmccutchan@google.com
57ea35671c
Add getClassList RPC
...
BUG=
Review URL: https://codereview.chromium.org//895093002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43414 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 17:59:45 +00:00
fschneider@google.com
75ad2d8253
VM: Improve polymorphic check-class in optimized code.
...
Sort comparisons by decreasing IC count like we do for polymorphic inlining.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//895603002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43392 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 12:30:51 +00:00
johnmccutchan@google.com
4ebfc3a73f
Make Dart_Invoke work for private static functions
...
Our API documentation states that Dart_Invoke will invoke private functions.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//891053004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43375 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 00:37:08 +00:00
turnidge@google.com
e65e6fab9d
Begin migrating the vm service from a rest-style interface to a json-rpc style interface.
...
BUG=
Review URL: https://codereview.chromium.org//823403004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43370 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-02 23:15:40 +00:00
johnmccutchan@google.com
19792aa4d5
Always use isolate creation callback passed to Dart_Initialize for service isolate startup
...
BUG=
R=turnidge@google.com
Review URL: https://codereview.chromium.org//891343006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43358 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-02 19:35:57 +00:00
johnmccutchan@google.com
36a1740aa5
Make service lifecycle checks thread safe
...
RunLoop tests were getting wedged trying to communicate with the vm-isolate that was shutdown before a test isolate started up. dartbug.com/22219
This CL:
* ensures that any 'is the service running' checks are done with a lock held.
* Normalizes trace messages printed from the vm-service.
Review URL: https://codereview.chromium.org//871373012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43348 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 22:03:18 +00:00
fschneider@google.com
d9be656941
VM: Share closure-call dispatchers.
...
Instead of caching these in each signature class,
cache them in the common super-class of all closures (_FunctionImpl)
This avoid unecessary polymorphism when invoking.
R=vegorov@google.com
Review URL: https://codereview.chromium.org//882323004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43336 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 13:06:11 +00:00
johnmccutchan@google.com
172baa03ff
Service isolate rework take 2
...
Review URL: https://codereview.chromium.org//889443002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43306 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 18:31:27 +00:00