asiva@google.com
7ea520f10f
Create read only handles for empty_array and sentinel objects
...
(trying out a basic framework and will extend it to others once this
works).
Review URL: https://codereview.chromium.org//11648006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16416 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-21 02:33:05 +00:00
meh@google.com
1125aff405
Move generate_perf_events_symbols flag to VM (new issue with @google address)
...
Changes reviewed and approved here:
https://chromiumcodereview.appspot.com/11490026
Created a new issue using meh@google.com instead of meh@chromium.org so I can commit to trunk.
BUG=
Committed: https://code.google.com/p/dart/source/detail?r=16016
Review URL: https://codereview.chromium.org//11549011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16084 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-13 00:42:19 +00:00
meh@google.com
c9271a657a
Revert "Move generate_perf_events_symbols flag to VM (new issue with @google address)"
...
This reverts commit d4d38edbb889d186930c9346c867a0252f425e99.
BUG=
Review URL: https://codereview.chromium.org//11519025
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16017 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 03:41:30 +00:00
meh@google.com
9067ec4d33
Move generate_perf_events_symbols flag to VM (new issue with @google address)
...
Changes reviewed and approved here:
https://chromiumcodereview.appspot.com/11490026
Created a new issue using meh@google.com instead of meh@chromium.org so I can commit to trunk.
BUG=
Review URL: https://codereview.chromium.org//11549011
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@16016 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-12 02:55:21 +00:00
cshapiro@google.com
f5c4d7a381
Unify specification of file open, close, and write callbacks.
...
Review URL: https://codereview.chromium.org//11442024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15807 260f80e4-7a28-3924-810f-c04153c831b5
2012-12-06 21:56:31 +00:00
tball@google.com
bf5f0db5d0
Added support for isolate unhandled exceptions.
...
BUG=
Review URL: https://codereview.chromium.org//11413101
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15352 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-26 23:31:47 +00:00
iposva@google.com
3d61f5d16a
Fix bug 6467:
...
- Do not attempt to Dart_ExitScope if no scope exists.
- Print more informative message if Dart_Initialization fails.
Review URL: https://codereview.chromium.org//11308166
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15242 260f80e4-7a28-3924-810f-c04153c831b5
2012-11-22 07:54:21 +00:00
cshapiro@google.com
772a399cab
Emit symbol maps for compiled code for use by the Linux perf tool.
...
Review URL: https://chromiumcodereview.appspot.com//10831005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9922 260f80e4-7a28-3924-810f-c04153c831b5
2012-07-26 00:21:25 +00:00
turnidge@google.com
3f940819a7
Add a callback to inform embedders when an isolate is being shut down.
...
Review URL: https://chromiumcodereview.appspot.com//10450016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@9211 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-28 18:15:17 +00:00
fschneider@google.com
84027c4457
Add flow graph printing into a .cfg file with flag --print-flow-graph-file.
...
This CL adds a flag --print-flow-graph-file which produces one
.cfg-file per isolate when enabled. Currently it prints the final
flow graph before code generation.
I also added SuccessorAt and SuccessorCount to allow easy iteration
over the successors of a basic block.
Review URL: https://chromiumcodereview.appspot.com//10446116
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@8322 260f80e4-7a28-3924-810f-c04153c831b5
2012-06-06 11:09:02 +00:00
turnidge@google.com
9d72035ce5
Use the ThreadPool for all isolates and native ports. Previously,
...
each isolate or native port had a dedicated thread.
Refactored the MessageHandler api...
- Added a Run function to allow a MessageHandler to run on a
ThreadPool. These functions take a start and end callback to allow for
isolate initialization and shutdown.
- Made the queue private to the MessageHandler and moved all message
processing code inside the MessageHandler (got rid of all of the
different flavors of RunLoop). This helps remove some code
duplication and hides the details of how messages are handled.
- Moved all locking and notification out of MessageQueue and moved it
up to MessageHandler. Moved OOB support out of MessageQueue and up
to MessageHandler. These changes make the MessageQueue much
simpler.
- Refactored native port and isolate MessageHandlers to share more code.
- Improved --trace_isolates output.
- Added tests for MessageHandler.
Refactored lib/isolate code...
- Use the new MessageHandler::Run api.
- Got rid of the LongJump stuff in RunIsolate. No longer needed.
- Use the new StartIsolateScope/SwitchIsolateScope to make the code
less verbose and less error-prone.
- Store top-level isolate errors in the sticky_error.
Added StartIsolateScope/SwitchIsolateScope classes.
Review URL: https://chromiumcodereview.appspot.com//9924015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@6762 260f80e4-7a28-3924-810f-c04153c831b5
2012-04-19 19:47:27 +00:00
turnidge@google.com
0ddd4c04e9
Dart_PropagateError, take 2.
...
This change hopefully takes care of the non-mac build issues. The
checked mode failures are fixed in a separate cl.
Review URL: https://chromiumcodereview.appspot.com//9316071
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3863 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-02 19:05:06 +00:00
turnidge@google.com
ae88492093
Revert Dart_PropagateError until I can track down the problems in
...
checked mode tests.
Sorry for the hubbub.
Review URL: https://chromiumcodereview.appspot.com//9314053
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3823 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 23:39:28 +00:00
turnidge@google.com
9da62c5fea
Add Dart_PropagateError.
...
This function can be used in native functions to properly pass all
errors up the stack.
Set the long jump base in the Compiler instead of outside of the
compiler. A bunch of errors that used to be propagated through the
sticky_error are now propagated through return values. This includes
all of the DartEntry and DartLibraryCall functions.
In particular, we no longer use the long jump to cross dart frames.
Instead errors are propagated across dart frames using the same
mechanism that we use for unhandled exceptions. I've added assertions
to make sure that we only use the long jump when it is "safe".
Review URL: https://chromiumcodereview.appspot.com//9169102
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3815 260f80e4-7a28-3924-810f-c04153c831b5
2012-02-01 22:34:16 +00:00
turnidge@google.com
e62f34ce77
Give isolates names to be used during debugging.
...
Implement --trace_isolates.
-------------
Sample output of --trace_isolates for the CrossIsolateMessageTest:
[+] Starting isolate:
isolate: CrossIsolateMessageTest.dart/main-7112
[+] Starting isolate:
isolate: CrossIsolateMessageTest.dart/CrossIsolate1.main-7114
[+] Starting isolate:
isolate: CrossIsolateMessageTest.dart/CrossIsolate2.main-7115
[>] Posting message:
source: CrossIsolateMessageTest.dart/main-7112
reply_port: 7117
dest: CrossIsolateMessageTest.dart/CrossIsolate2.main-7115
dest_port: 7115
[>] Posting message:
source: CrossIsolateMessageTest.dart/CrossIsolate2.main-7115
reply_port: 7118
dest: CrossIsolateMessageTest.dart/main-7112
dest_port: 7117
[>] Posting message:
source: CrossIsolateMessageTest.dart/main-7112
reply_port: 7119
dest: CrossIsolateMessageTest.dart/CrossIsolate1.main-7114
dest_port: 7114
[>] Posting message:
source: CrossIsolateMessageTest.dart/CrossIsolate1.main-7114
reply_port: 7120
dest: CrossIsolateMessageTest.dart/main-7112
dest_port: 7119
[>] Posting message:
source: CrossIsolateMessageTest.dart/main-7112
reply_port: 0
dest: CrossIsolateMessageTest.dart/CrossIsolate1.main-7114
dest_port: 7120
[>] Posting message:
source: CrossIsolateMessageTest.dart/CrossIsolate1.main-7114
reply_port: 0
dest: CrossIsolateMessageTest.dart/CrossIsolate2.main-7115
dest_port: 7118
[>] Posting message:
source: CrossIsolateMessageTest.dart/CrossIsolate2.main-7115
reply_port: 0
dest: CrossIsolateMessageTest.dart/main-7112
dest_port: 7116
[>] Posting message:
source: CrossIsolateMessageTest.dart/main-7112
reply_port: 0
dest: CrossIsolateMessageTest.dart/main-7112
dest_port: 7113
[-] Stopping isolate:
isolate: CrossIsolateMessageTest.dart/CrossIsolate2.main-7115
[-] Stopping isolate:
isolate: CrossIsolateMessageTest.dart/CrossIsolate1.main-7114
[-] Stopping isolate:
isolate: CrossIsolateMessageTest.dart/main-7112
Review URL: https://chromiumcodereview.appspot.com//9242035
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@3416 260f80e4-7a28-3924-810f-c04153c831b5
2012-01-18 21:46:27 +00:00
turnidge@google.com
0b833d4977
Add support for interrupting an isolate in the vm. Interrupts are
...
implemented by extending the existing support for stack overflow
checking in the vm. When an interrupt is scheduled for an isolate, we
overwrite the isolate's stack limit with a value guaranteed to cause a
stack overflow.
We support multiple kinds of interrupts, encoded in the low bits of
the stack limit.
Add Dart_InterruptIsolate and Dart_InterruptIsolateCallback to the
dart embedding api to allow the embedder to request and handle
interrupts.
Add EXPECT_SUBSTRING(needle, haystack) testing macro.
Review URL: http://codereview.chromium.org//8851008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@2529 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-16 18:41:20 +00:00
turnidge@google.com
7c2a96158e
Stop using void* types in the dart embedding api.
...
Review URL: http://codereview.chromium.org//8761007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1988 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-01 18:18:06 +00:00
podivilov@google.com
c692646f07
Introduce Dart_SetVMFlags API function.
...
It should be possible to set command line arguments without providing isolate init callback.
Review URL: http://codereview.chromium.org//8713012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1972 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-01 11:59:35 +00:00
asiva@google.com
b53c955b37
- Refactor the isolate callback mechanism to also include creation of the
...
isolate, this enables creation of isolates using a snapshot
- remove source buffers of corelib, coreimpl-lib and builtin-lib from the binary
Review URL: http://codereview.chromium.org//8673002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1958 260f80e4-7a28-3924-810f-c04153c831b5
2011-12-01 00:30:25 +00:00
asiva@google.com
aaffbd2561
Support command line parameters to specify a url to file name mapping. This is used during snapshot generation so that a URL is mapped to a physical file name.
...
Review URL: http://codereview.chromium.org//8439061
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1550 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-15 21:19:27 +00:00
asiva@google.com
8743e1cc2a
- Fix the snapshot generation python script to return an error code when snapshot generation fails and print the error message.
...
- Split isolate creation into CreateIsolate and InitializeIsolate so that we don't get SEGVs when there is a failure compiling the corelib dart sources during the bootstrap process
Review URL: http://codereview.chromium.org//8334031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@1225 260f80e4-7a28-3924-810f-c04153c831b5
2011-11-04 22:08:13 +00:00
asiva@google.com
fdb5d9a607
Fix compilation warnings/errors seen with newer versions of gcc compiler.
...
Review URL: http://codereview.chromium.org//8222017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@321 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-11 00:37:11 +00:00
dgrove@google.com
4c0f559d23
Initial checkin.
...
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@15 260f80e4-7a28-3924-810f-c04153c831b5
2011-10-05 05:20:07 +00:00