Commit Graph

505 Commits

Author SHA1 Message Date
ajohnsen@google.com 38619425c2 Revert "Per isolate package root."
Revert "Fix test in checked mode."

The Dartium branch is locked atm, making it impossible to land this and have green Dartium bots.

BUG=

Review URL: https://codereview.chromium.org//590123002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40540 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-22 11:13:28 +00:00
ajohnsen@google.com a058d07806 Per isolate package root.
BUG=
R=iposva@google.com, sgjesse@google.com, turnidge@google.com

Review URL: https://codereview.chromium.org//545483002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40534 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-22 08:07:06 +00:00
rmacnak@google.com e803f27641 Make Dart_LoadLibrary and Dart_LoadSource take line and column offsets like Dart_LoadScript.
BUG=http://dartbug.com/13460
R=hausner@google.com

Review URL: https://codereview.chromium.org//429013002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38801 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-31 21:25:23 +00:00
hausner@google.com 4258c115b4 Handle load errors in deferred code
IO errors on the URL of a deferred library are forwarded to the Future
that handles the deferred load. Syntax errors and finalization errors
are lethal, killing the isolate.

Review URL: https://codereview.chromium.org//419103003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38800 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-31 21:09:33 +00:00
asiva@google.com a8195aeb5c Change the Dart API call Dart_FInalizeLoading to accept an additional argument
which makes completion of deferred library futures optional.

R=hausner@google.com

Review URL: https://codereview.chromium.org//407143004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38463 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-22 16:56:14 +00:00
asiva@google.com a323a9c9db The dart version of typeddata library has changed to be compatible with the dart2js implementation
(typeddata does not implement ByteBuffer anymore).
Added new Dart API functions to account for this change.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org//392043003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@38351 260f80e4-7a28-3924-810f-c04153c831b5
2014-07-17 22:08:07 +00:00
asiva@google.com a2d7a425c9 - Remove Dart_ReceivePortGetId, Dart_GetReceivePort and Dart_PostMessage.
- Change _EventHandler._sendData to use a sendport object instead of a
  receiveport object.

R=iposva@google.com

Review URL: https://codereview.chromium.org//359673002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37827 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-30 17:46:26 +00:00
asiva@google.com 9a718b8235 Add a function Dart_AllocateWithNativeFields which allocates an object and sets the native fields in one call.
R=srdjan@google.com

Review URL: https://codereview.chromium.org//349643003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37568 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-20 21:08:33 +00:00
hausner@google.com 6cc8cbc53b Adding embedder API function Dart_FinalizeLoading
Embedder must call Dart_FinalizeLoading when all outstanding
load requests are satisfied, to complete the deferred loading
futures.

R=asiva@google.com

Review URL: https://codereview.chromium.org//341543004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37423 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-17 21:05:30 +00:00
rmacnak@google.com 443faa9700 Add accessors for Maps to the embedding API.
(To be used by Dartium.)

R=koda@google.com

Review URL: https://codereview.chromium.org//289553002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36840 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 21:49:28 +00:00
asiva@google.com de6a12ce6a - Add Dart_EmptyString to return the canonical empty string similar to how
Null, True and False are done
- Removed check for current isolate from Dart_Null, Dart_True, Dart_False,
  Dart_EmptyString as these are returning singleton objects.

R=regis@google.com

Review URL: https://codereview.chromium.org//302143004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36823 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-30 17:33:15 +00:00
johnmccutchan@google.com b3f2fb14d0 Reduce CPU usage when no isolates need to be profiled (e.g. when an isolate calls readLineSync or sleep the isolate owns the thread but is blocked).
This CL does the following:

- Introduces two new API entry points: Dart_IsolateBlocked and Dart_IsolateUnblocked.
- The thread interrupter thread goes into a deep sleep if no isolates need to be profiled (not scheduled on a thread or are in a blocking call).
- When an isolate unblocks, the thread interrupter thread resumes regular interrupts.
- dart:io readLineSync and sleep mark that they are making a blocking call.

This fixes https://code.google.com/p/dart/issues/detail?id=18126 reducing CPU usage to 0% when waiting for stdin or sleeping.

R=ajohnsen@google.com, iposva@google.com

Review URL: https://codereview.chromium.org//297183003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36632 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-26 11:53:49 +00:00
asiva@google.com d5fbbd593a Add a new API function to extract all the native arguments into an array
passed in by the caller.

This call can be used in DOM bindings patterns as follows:
Old code -

Dart_Handle exception = 0;
{
        WebGL* receiver = DartDOMWrapper::receiver< WebGL >(args);
        unsigned srcRGB = DartUtilities::dartToUnsigned(args, 1, exception);
        if (exception)
            goto fail;
        unsigned dstRGB = DartUtilities::dartToUnsigned(args, 2, exception);
        if (exception)
            goto fail;
        unsigned srcAlpha = DartUtilities::dartToUnsigned(args, 3, exception);
        if (exception)
            goto fail;
        unsigned dstAlpha = DartUtilities::dartToUnsigned(args, 4, exception);
        if (exception)
            goto fail;
        receiver->blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
        return;
}
fail:
    Dart_ThrowException(exception);
    ASSERT_NOT_REACHED();


Proposed new code -

/**
 * One time initialization code for setting up argument descriptors
 */
const int kNumArgs = 5;
const int kNumNativeFields = 2;
static const uint8_t native_arg_descriptor[kNumArgs] = {
  DART_NATIVE_ARG_DESCRIPTOR(Dart_NativeArgument_kNativeFields, 0),
  DART_NATIVE_ARG_DESCRIPTOR(Dart_NativeArgument_kUint32, 1),
  DART_NATIVE_ARG_DESCRIPTOR(Dart_NativeArgument_kUint32, 2),
  DART_NATIVE_ARG_DESCRIPTOR(Dart_NativeArgument_kUint32, 3),
  DART_NATIVE_ARG_DESCRIPTOR(Dart_NativeArgument_kUint32, 4),
};
Dart_NativeArgument_Value native_args[kNumArgs];
intptr_t native_fields[kNumNativeFields];
native_args[0].as_native_fields.num_fields = kNumNativeFields;
native_args[0].as_native_fields.values = native_fields;

/**
 * Code executed for each invocation of the binding method
 */
Dart_Handle result = Dart_GetNativeArguments(args, kNumArgs, native_arg_descriptor, native_args);
if (Dart_IsError(result)) {
    Dart_ThrowException(result);
}
WebGL* receiver = DartDOMWrapper::receiver< WebGL >(native_args[0].as_native_fields.values);
unsigned srcRGB = native_args[1].as_uint32;
unsigned dstRGB = native_args[2].as_uint32;
unsigned srcAlpha = native_args[3].as_uint32;
unsigned dstAlpha = native_args[4].as_uint32;
receiver->blendFuncSeparate(srcRGB, dstRGB, srcAlpha, dstAlpha);
return;

R=iposva@google.com, vsm@google.com

Review URL: https://codereview.chromium.org//282883002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36464 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-22 00:08:23 +00:00
rmacnak@google.com 92996516ed Add Dart_IdentityHash to the embedding API.
(For use in ScriptObjectTraits.)

R=asiva@google.com

Review URL: https://codereview.chromium.org//263823004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35750 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-05 17:32:21 +00:00
iposva@google.com fd8565b071 - Add a minimal implementation of Capability.
- Make RawReceivePort and SendPort VM internal objects.
- Rationalize the creation of ports and their handling within the VM.

R=asiva@google.com

Review URL: https://codereview.chromium.org//243973002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35325 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 19:44:03 +00:00
asiva@google.com 4eb6d5f7d8 Modify the Weak Reference Set creation API to make it easier to create
these sets in the GC Prologue code.

When this new API is not used in dartium:
  Without prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 260.94890510948903
    dom-modify createTextNode runs-per-second 172.0

  With prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 316.0
    dom-modify createTextNode runs-per-second 197.60479041916167


When this new API is used in dartium:
  Without prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 310.0
    dom-modify createTextNode runs-per-second 174.4765702891326

  With prolog callbacks in New  gen GC:
    dom-modify createElement runs-per-second 416.0
    dom-modify createTextNode runs-per-second 241.75824175824175

R=iposva@google.com

Review URL: https://codereview.chromium.org//238063011

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35215 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-21 18:31:15 +00:00
asiva@google.com a561e2bd17 1. Provide a framework to traverse persistent prolog weak handles.
R=iposva@google.com

Review URL: https://codereview.chromium.org//231053003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35066 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-15 16:32:55 +00:00
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
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
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
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
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
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 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