johnmccutchan@google.com
ef666553a1
Add runtime and native entry tags
...
- Split runtime and native entry tags.
- Set runtime / native entry address as vm tag in stubs.
- Add reverse native entry resolver (pc to name) to public API (breaking change).
- Hookup reverse resolver for standalone VM (io + bootstrap + builtin natives).
- Runtime entries are registered with tags.
- Profiler queries for tag names via the reverse native entry resolver.
- Profiler outputs named entry tags as children under parent tag (runtime or native).
R=asiva@google.com
Review URL: https://codereview.chromium.org//227433004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34941 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-10 20:26:45 +00:00
iposva@google.com
0977a3bf2b
- First step in refactoring ports with the goal of moving
...
them closer into the VM implementation.
R=asiva@google.com
Review URL: https://codereview.chromium.org//196443009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34438 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-26 17:30:39 +00:00
asiva@google.com
d302dc431a
Auto delete persistent weak handles during finalization after invoking the callback associated with the weak handle.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//205153002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34208 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-20 21:45:43 +00:00
asiva@google.com
76b153643c
Remove Dart_AddGcPrologueCallback and Dart_RemoveGcPrologueCallback from the Dart API.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//198103004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33657 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-13 18:10:06 +00:00
asiva@google.com
a611f736e0
Remove the ability to allow multiple gc prologue and gc epilogue callbacks
...
to be registered at any given time. Dartium seems to use only one.
R=iposva@google.com
Review URL: https://codereview.chromium.org//197963002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33622 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-12 22:39:15 +00:00
koda@google.com
a69d028eb3
Track external allocated memory for weak persistent handles.
...
The amount of external allocation is tracked per generation
and informs GC policy.
BUG=dart:11471
R=asiva@google.com
Review URL: https://codereview.chromium.org//187113003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33467 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-07 23:53:32 +00:00
koda@google.com
87fbe42a46
Pretenure large external typed data and strings.
...
Also fix an incorrect API comment about handle return type.
BUG=dart:17284
R=iposva@google.com
Review URL: https://codereview.chromium.org//180113009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33344 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-05 21:09:19 +00:00
asiva@google.com
e380b175f8
Pass in the isolate parameter to the weak persistent callback handler so that
...
there is no need to access the current isolate in the callback and delete
path (this code is run while a GC is in progress).
See https://codereview.chromium.org/185643003/ for corresponding changes
in dartium
R=iposva@google.com
Review URL: https://codereview.chromium.org//186003002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33282 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-04 18:11:19 +00:00
ajohnsen@google.com
a22e98f539
[ZLIB] Add support for windowBits, memLevel, raw
...
BUG=159367
**BC breaks:**
All public (API) classes that used to be const are not const any more. This allow checking the validity of input parameters in the constructor body.
- ZLibCodec,
- GZipCodec,
- ZLibEncoder,
- ZLibDecoder
The globals codecs GZIP and ZLIB are now final we should be ok (the class contain only final properties, ie no state).
What should be done:
(- finer grained exceptions, -> later change)
(- Handle the flush modes but probably in an other patch as the updates might be more complex.)
Done:
Patch Set #1
- add some more docs,
- support for memLevel.
Patch Set #2 :
- implement dictionaries (todo: fix mem management),
- integrate review feedback,
- fix CC,
- rebased on master
Patch Set #4 :
- support for strategy,
- add some checks (ie checking the level, memLevel, ...) this could imply adding a constructor body (Codecs, Coders) but this would force making the const non const and break BC, thoughts ?
- Add ZLIB constants Dart side.
- Refactor the tests and test only some levels rather all which was unit testing rather more than the extension. It saves some test time.
Patch Set #8 :
- fix mem management for dictionaries,
R=ajohnsen@google.com , lrn@google.com
Review URL: https://codereview.chromium.org//130513003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33206 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-03 11:43:09 +00:00
asiva@google.com
04d7a5350f
Add Dart_GetNativeFieldsOfArgument to get all the native fields of a dart
...
object. This is especially useful for dartium which has two native fields
the type id and the native implementation field for the wrapper. This allows
for both values to be extracted in one call.
R=vsm@google.com
Review URL: https://codereview.chromium.org//174393004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32905 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-21 16:53:23 +00:00
johnmccutchan@google.com
2820a12766
Allow for embedder provided service request handlers
...
BUG=
R=turnidge@google.com
Review URL: https://codereview.chromium.org//170943003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32769 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-18 22:38:11 +00:00
asiva@google.com
addb9ed934
Add new Dart API function Dart_IsolateData which returns the peer isolate data associated with an isolate.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//148453016
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32397 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-07 00:43:18 +00:00
turnidge@google.com
b891e78325
Post-meetup feature extravaganza.
...
Remodel the top-level isolate summary page.
Add variables to stack frames in the stack trace.
Stop putting small integers and bools in the object id ring.
Rework how we pass down null references (and null-like references like
uninitialized values).
Collect all isolate timers by default.
Change the lifetime of IsolateSpawnState so that we can refer to it
later to know how an isolate started up. Stop pretending that
IsolateSpawnState is a void*. Clean up vestigial IsolateStartData.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//145323002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32128 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-29 18:40:12 +00:00
iposva@google.com
781f737c6a
First round of http://dartbug.com/15922 :
...
- Address warnings about 64-bit to 32-bit conversions.
- Remove heap profiler.
R=asiva@google.com
Review URL: https://codereview.chromium.org//139043003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31867 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-16 05:05:35 +00:00
johnmccutchan@google.com
c76b6eb1c2
Split service into VM and embedder specific bits.
...
Move most service sources into the VM.
R=asiva@google.com
Review URL: https://codereview.chromium.org//125103004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31809 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-14 22:34:43 +00:00
lrn@google.com
a6d4c0b996
Code cleanup (mostly io lib and some http lib).
...
- Unused function removed,
- Make properties always appear before methods,
- Use dart idioms where possible.
BUG=
R=ajohnsen@google.com
Review URL: https://codereview.chromium.org//124753002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31602 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-08 12:03:11 +00:00
asiva@google.com
3a29a5a2fb
Add comments to document parameters of Dart_NativeEntryResolver.
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//125393002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31505 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-06 21:30:00 +00:00
asiva@google.com
88de88feb5
Add Dart API method Dart_SetPersistentHandle to enable setting the value of
...
a persistent handle.
R=iposva@google.com
Review URL: https://codereview.chromium.org//116473004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31443 260f80e4-7a28-3924-810f-c04153c831b5
2014-01-03 18:47:38 +00:00
asiva@google.com
a576fec3c0
Allow the native resolver to setup whether it needs the Dart API scope to
...
be setup automatically or not when a native function is invoked.
This would allow the embedder to treat some native functions as leaf
functions whose invocation can be very light.
R=hausner@google.com , zra@google.com
Review URL: https://codereview.chromium.org//117723002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31286 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-19 17:47:56 +00:00
turnidge@google.com
b640712e6b
Handle vmservice messages while at breakpoint.
...
Allow rudimentary inspection of breakpoints from vmservice.
R=hausner@google.com , johnmccutchan@google.com
Review URL: https://codereview.chromium.org//113513004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31233 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-18 17:45:17 +00:00
hausner@google.com
55c283a672
Transmit breakpoint id on paused event
...
Breakpoint callback get an additional parameter to receive the id of the breakpoint that was hit, or 0 if the debugger pauses due to stepping.
R=turnidge@google.com
Review URL: https://codereview.chromium.org//110913002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@31029 260f80e4-7a28-3924-810f-c04153c831b5
2013-12-10 17:41:05 +00:00
iposva@google.com
b1fdbb40d1
- Update documentation of Dart_NewWeakPersistentHandle.
...
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//86233003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30643 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 20:48:17 +00:00
rmacnak@google.com
af3f18fa84
Add an API function to get a debugger stack trace from an error handle.
...
BUG=http://dartbug.com/14322
R=asiva@google.com
Review URL: https://codereview.chromium.org//51793002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30323 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 23:42:23 +00:00
hausner@google.com
0673063f57
Add closure object type to debugger wire protocol
...
R=devoncarew@google.com
Review URL: https://codereview.chromium.org//61153006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30289 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-14 19:42:14 +00:00
hausner@google.com
14489dd0f0
Add Dart_GetClosureInfo
...
Will be used by debugger wire protocol.
R=regis@google.com
Review URL: https://codereview.chromium.org//65383007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30162 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-11 18:22:05 +00:00
iposva@google.com
14696031b3
- Do not use size_t.
...
Review URL: https://codereview.chromium.org//59083012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29952 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-06 01:08:22 +00:00
iposva@google.com
070d3dedf7
- Add a per-isolate pseudo random number generator to the
...
VM internals. This PRNG is not used to generate random
numbers in Dart code.
- Use the PRNG to generate JIT cookies for large constants
if needed during assembly.
- Add the possibility to set an external entropy source
for the PRNG through the C API.
R=asiva@google.com
Review URL: https://codereview.chromium.org//59773007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29950 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-06 00:59:46 +00:00
srdjan@google.com
2b9fad92c7
In preparation of inlining remainder and modulo binary Smi operations:
...
- Add REM token
- Fix checking of function fingerprints.
- Remove unused intrinsic for remainder (the function gets inlined and intrinsic is not generated)
R=hausner@google.com
Review URL: https://codereview.chromium.org//59933004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29929 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-05 19:27:46 +00:00
iposva@google.com
9869227f25
- Remove support for the non-used Dart_kLibraryTag in the C API.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//57663003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29822 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-04 17:27:11 +00:00
sgjesse@google.com
36a67fa046
Implement fromEnvironment on bool, int and String
...
This implements const constructor fromEnvironment on bool, int and
String.
The VM have the added -Dname=value option to define the value for the
properties. All values are provided by using the -D - nothing is read
from the environment.
If the resulting value is null or - in the case of int.fromEnvironment
- not a number an ArgumentError is thrown.
This CL does not have any implementation for dart2js.
This is a continuation of the change
https://chromiumcodereview.appspot.com/24975002 by iposva@
BUG=
R=iposva@google.com
Review URL: https://codereview.chromium.org//50983002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29642 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 05:46:57 +00:00
sgjesse@google.com
2f27215203
Remove the reply port form the native isolate handler
...
The handler function for a native isolate no longer gets an explicit
reply port. Instead the reply port must be sent as part of the message
if required.
The Dart_CObject structure now exposes the send ports in a message to
a native isolate.
R=asiva@google.com , floitsch@google.com , whesse@google.com
BUG=
Review URL: https://codereview.chromium.org//43483004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29418 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-29 08:45:32 +00:00
jacobr@google.com
761c1de735
Fix to asiva's code review comments on TBR Cl.
...
BUG=
R=asiva@google.com
Review URL: https://codereview.chromium.org//49613002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29390 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-28 20:23:19 +00:00
jacobr@google.com
80f92dc265
Add Dart_LibraryId method unblocking landing 45613003. TBR
...
BUG=
R=sra@google.com
Review URL: https://codereview.chromium.org//47293002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29318 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-26 22:55:43 +00:00
asiva@google.com
a294e0a82f
Fix for issue 14236:
...
Retain script path of parent isolate when spawnFunction is called so that
it works when using script snapshots.
The test case issue14236_test.dart is a script snapshot whose original source
file path is issue14236_source.dart
R=iposva@google.com , sgjesse@google.com
Review URL: https://codereview.chromium.org//35393003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29178 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-24 16:41:22 +00:00
asiva@google.com
f5b0f9beae
Remove deprecated call Dart_Error from the API. There are no uses of it.
...
R=turnidge@google.com
Review URL: https://codereview.chromium.org//26751005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28944 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-21 19:53:31 +00:00
asiva@google.com
1a2f236fab
Fix issue 13942 - Dart_Error function invokes OS::VSNPrint with the "format" string containing data derived from the string
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//27694005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28809 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-17 17:49:45 +00:00
asiva@google.com
21cefcd726
Add a new method Dart_InvokeConstructor to allow invocation of generative
...
constructors on an object that has already been allocated using Dart_Allocate.
R=regis@google.com
Review URL: https://codereview.chromium.org//25675009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28276 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-04 20:00:48 +00:00
asiva@google.com
1cd2ad79ec
Fix for 12312 (Dartium crash when reloading after running tests).
...
Add framework for Dart_Cleanup which will cleanup stuff on exit.
Ideally the VM isolate should be shutdown in Dart_Terminate but we don't
seem to have a clean thread pool shutdown as a result of which there are
racing isolates.
R=iposva@google.com
Review URL: https://codereview.chromium.org//25674009
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28248 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-03 22:17:48 +00:00
asiva@google.com
f4aaf704f0
Change type of Dart_PersistentHandle to be the same as Dart_Handle so that
...
persistent handles can be passed to regular API methods without having
to do a Dart_NewHandleFromPersistent first.
R=iposva@google.com , rmacnak@google.com
Review URL: https://codereview.chromium.org//24323008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28033 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-28 00:15:06 +00:00
asiva@google.com
292d8c9c21
Fix 13594.
...
R=iposva@google.com
Review URL: https://codereview.chromium.org//24785002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@28017 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-27 16:55:20 +00:00
asiva@google.com
928894a58c
- Added Dart_GetNativeIsolateData so that the bindings code can access the IsolateCurrentData
...
where possible without having to invoke Isolate::Current()
- Modified lookupWrapper to accept DartDOMData as a parameter so that the return to Dart functions
won't invoke Isolate::Current()
Some Dromaeo numbers before this change:
CONSOLE MESSAGE: RESULT: Dromaeo-drt dartium-dart dom-attr getAttribute runs-per-second 1162.2
CONSOLE MESSAGE: RESULT: Dromaeo-drt dartium-dart dom-attr element_property_access runs-per-second 1255.6
after this change:
CONSOLE MESSAGE: RESULT: Dromaeo-drt dartium-dart dom-attr getAttribute runs-per-second 1237.6
CONSOLE MESSAGE: RESULT: Dromaeo-drt dartium-dart dom-attr element_property_access runs-per-second 1385.4
R=rmacnak@google.com , vsm@google.com
Review URL: https://codereview.chromium.org//24376005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27789 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-23 23:53:39 +00:00
rmacnak@google.com
c9eabbcb56
Make Dart_IdentityEqual live up to its sepc and not leak boxing implementation detail. (Reland r27542.)
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//24254004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27774 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-23 16:23:06 +00:00
rmacnak@google.com
0d6cfb77bd
Remove Dart_[Qualified]ClassName.
...
Review URL: https://codereview.chromium.org//24252014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27724 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-20 21:17:19 +00:00
rmacnak@google.com
89d5616468
Never return a Dart_Handle on a dart::Class from the embedding API.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//24210003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27715 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-20 18:29:56 +00:00
jacobr@google.com
cac607707a
Make Dart_ScriptGetTokenInfo account for line_offset() and col_offset()
...
Cleanup bugs in wrapExpressionAsClosure Fix bug in how setters were handled and filter out 'this' from local variables list.
BUG=
R=hausner@google.com
Review URL: https://codereview.chromium.org//23526056
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27581 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-17 20:52:22 +00:00
ricow@google.com
fab06df0eb
Revert revision 27542 "Make Dart_IdentityEqual live up to its spec and not leak boxing implementation detail."
...
This is causing checked mode failures on all vm bots.
Review URL: https://codereview.chromium.org//23587024
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27545 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-17 06:29:47 +00:00
rmacnak@google.com
8ed7a0367f
Make Dart_IdentityEqual live up to its spec and not leak boxing implementation detail.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//23464073
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27542 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-17 01:30:30 +00:00
rmacnak@google.com
c7460aff0f
Add Dart_QualifiedClassName.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//23851038
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27539 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-17 00:06:28 +00:00
jacobr@google.com
d9f7cc5099
Add "function" as an argument to Dart_ActivationFrameInfo
...
BUG=
R=hausner@google.com
Review URL: https://codereview.chromium.org//23609032
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27440 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-12 17:45:42 +00:00
mlippautz@google.com
94502c10ea
Checks CObject lengths in native API.
...
Also converts the API to use intptr_t instead of a mixture of int64_t and int. Internally all variable length objects have lengths and maximum values represented as intptr_t (actually Smi ranges). In order to check for these maximum lengths we need to have a common type for 32 and 64 bit platforms.
Helping constructs like IOBuffer can still use 64bit lengths, but have to check that there values are actually in the domain of intptr_t as soon as internal objects are created.
Addresses issue 4314.
BUG=
R=asiva@google.com , sgjesse@google.com
Review URL: https://codereview.chromium.org//23532048
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@27395 260f80e4-7a28-3924-810f-c04153c831b5
2013-09-11 16:56:12 +00:00