Commit Graph

995 Commits

Author SHA1 Message Date
johnmccutchan@google.com ff20eb09b0 Support Bigint parameters in Int32x4 constructor
https://code.google.com/p/dart/issues/detail?id=15130

R=srdjan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30686 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-26 23:46:27 +00:00
johnmccutchan@google.com f40c74c3de Remove type annotation from _TypedListBase
BUG=https://code.google.com/p/dart/issues/detail?id=12861
R=hausner@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30685 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-26 23:35:35 +00:00
lrn@google.com ef66be8610 Change Expect.identical(NaN, x) to not assume NaNs are identical.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30667 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-26 10:32:51 +00:00
lrn@google.com e1b4afa85d Add num.parse.
The implementation is still primitive: It calls int.parse, then double.parse, and then fails if it hasn't found a result yet.

BUG= http://dartbug.com/8237
R=floitsch@google.com

Committed: https://code.google.com/p/dart/source/detail?r=30624

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30663 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-26 08:44:38 +00:00
rmacnak@google.com 314da361f0 Add demangle utility to Dartium's dart:html. Demangle typedef names in UserVisibleName.
BUG=http://dartbug.com/14892
R=asiva@google.com, vsm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30636 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 18:31:20 +00:00
lrn@google.com f5bf3613dc Revert "Add num.parse."
Fails on IE9.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30631 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 14:52:23 +00:00
lrn@google.com e0f3bb3092 Add num.parse.
The implementation is still primitive: It calls int.parse, then double.parse, and then fails if it hasn't found a result yet.

BUG= http://dartbug.com/8237
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30624 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-25 13:09:04 +00:00
ajohnsen@google.com 03c7cf69f3 Add optimized String.fromCharCodes path for Uint8List and Int8List.
BUG=
R=srdjan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30496 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-21 06:12:01 +00:00
lrn@google.com ed814958fc Fix VM not accepting static methods for Isolate.spawn.
BUG= http://dartbug.com/3011

Committed: https://code.google.com/p/dart/source/detail?r=30300

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30442 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-20 09:14:30 +00:00
rmacnak@google.com a9c7171aa2 Allow creation of public symbols using MirrorSystem.getSymbol when passing a null library.
R=asiva@google.com, gbracha@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30435 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-20 01:33:24 +00:00
rmacnak@google.com caa3e25e0a Move non-caching fields to the top of mirror classes.
R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30384 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-19 00:46:01 +00:00
rmacnak@google.com 2e89f4f4d6 Drop "Impl" suffix from local mirror class names.
R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30321 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 22:44:44 +00:00
regis@google.com 2a355a7bb6 Lazily format LanguageError messages (fix issue 15069).
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30308 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 18:54:24 +00:00
lrn@google.com a43c644f63 Make SendPortImpl_internalSend not take a reply port as argument.
The reply port is still there in the internal Message structure,
where it is used by control messages.

BUG= http://dartbug.com/14731
R=fschneider@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30302 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 11:28:23 +00:00
lrn@google.com ab18829ae4 Revert "Fix VM not accepting static methods for Isolate.spawn."
Comitted by mistake.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30301 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 11:23:47 +00:00
lrn@google.com b0e40ddc70 Fix VM not accepting static methods for Isolate.spawn.
BUG= http://dartbug.com/3011

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30300 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-15 10:28:32 +00:00
rmacnak@google.com bc39a8afe8 When ClassMirrors are created by enumerating members of a LibraryMirror, have the ClassMirror use that LibraryMirror as its owner.
BUG=http://dartbug.com/14449
R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30291 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-14 20:35:59 +00:00
regis@google.com 694401d38e Rename mixin typedef to mixin application alias in VM.
R=hausner@google.com, rmacnak@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30277 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-14 17:42:39 +00:00
lrn@google.com 207f0e6a3f Update and fix isolate documentation.
Review URL: https://codereview.chromium.org//66303012

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30221 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-13 09:34:58 +00:00
rmacnak@google.com 1dcc9ea681 Ensure constructorName symbols include private manglings.
R=asiva@google.com, gbracha@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30178 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-11 23:08:38 +00:00
regis@google.com e3da5e16e4 Check type bounds of redirecting factories (issue 14699).
Add tests for malbounded redirecting factories.
Clean up bound checking code and type error reporting code.

R=hausner@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30177 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-11 22:59:48 +00:00
rmacnak@google.com cc3e05ea99 Implement VariableMirror.isConst in the VM and ParameterMirror.isConst in dart2js.
BUG=http://dartbug.com/14671
R=ahe@google.com, asiva@google.com, gbracha@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30161 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-11 17:54:58 +00:00
rmacnak@google.com 93d342b42e Use the runtime for generic subsitution of variable types, return types, parameter types.
BUG=http://dartbug.com/14613
BUG=http://dartbug.com/14156
R=gbracha@google.com, regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30120 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-08 17:54:59 +00:00
srdjan@google.com 16f4e5c690 Constant fold strict comparison based on incoming types: different (exact) types means that the result is false. LoadStaticField computes type for final fields. Make a temporary buffer final.
R=kmillikin@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30119 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-08 17:42:45 +00:00
iposva@google.com 1cae21b556 - Reverting mirror changes.
Review URL: https://codereview.chromium.org//62373008

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30029 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-07 02:07:37 +00:00
iposva@google.com d27c33b5b2 - Reverting mirror changes.
Review URL: https://codereview.chromium.org//61873007

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30028 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-07 01:57:18 +00:00
rmacnak@google.com 8113397b88 Revert removed mirror API from VM.
Review URL: https://codereview.chromium.org//62373006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30023 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-07 01:15:17 +00:00
rmacnak@google.com 1caa73df59 Remove implementations of mirror methods not in the API from the VM. Update tests.
R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@30005 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-06 22:30:45 +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
floitsch@google.com 6c7a77524d Add missing ByteData.elementSizeInBytes.
BUG= http://dartbug.com/12881
R=johnmccutchan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29918 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-05 18:04:42 +00:00
iposva@google.com 3dced243b3 Fix http://dartbug.com/14763
- Find main in the exported names of the root library.
- Unify how the main function is called from spawnUri
  and the initial isolate.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29865 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-05 00:55:41 +00:00
johnmccutchan@google.com 29c01044bc This is the final breaking change in dart:typed_data needed for Dart 1.0. We need this change because the ECMAScript SIMD specification only includes Int32x4 and Int32x4List and our types must match.
R=srdjan@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29849 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-04 21:56:59 +00:00
floitsch@google.com ecb4291d96 Remove deprecated second argument to SendPort.send().
R=ajohnsen@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29836 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-04 19:01:11 +00:00
iposva@google.com 6a13da7d7d - More incorrect types fixed.
Review URL: https://codereview.chromium.org//58063002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29830 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-04 18:17:22 +00:00
iposva@google.com adad3bbcb1 - Force errors when using bad types or overrides.
R=asiva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29821 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-04 17:26:47 +00:00
fschneider@google.com 9031c80c88 Change == into an instance call to allow polymorphic inlining of ==.
In unoptimized code equality is now just another instance call.

The optimizer replaces it with a specialized implementation based on static
 type information and type feedback.

Many of the manual optimizations of == in the optimizer are now just handled
 by the generic inliner, plus polymorphic inlining of == calls is now possible.
This also eliminates the need for a lot of duplicated code in the backend.

I adapted the inlining heuristics to compensate for the slightly larger
inital flow graph size.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29800 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-04 11:32:52 +00:00
hausner@google.com c96bc29ab5 Compile time error if name is used before variable is declared
Implement proper semantics if a name has been referenced in a
block and later a variable with that same name is declared.

Fix library code that was wrong.

Add new language test, delete a couple of tests that are
outdated, file co19 bug 649.

Dart2js and dart2dart are not yet implementing these compile-time
errors.

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29770 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-01 21:28:31 +00:00
floitsch@google.com 7886e0ac13 Update TODO with bug number.
R=nweiz@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29769 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-01 20:54:45 +00:00
lrn@google.com 54a3662ccf Change integer canonicalization to use CheckAndCanonicalize
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29731 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-01 09:42:28 +00:00
johnmccutchan@google.com 5f63715d47 SIMD shuffle API changes
R=srdjan@google.com, zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29723 260f80e4-7a28-3924-810f-c04153c831b5
2013-11-01 07:09:54 +00:00
srdjan@google.com 98aad1b1d0 Optimize OneByteString’s contains function for one character patterns (similar to indexOf).
R=zra@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29701 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 21:13:46 +00:00
rmacnak@google.com 07c3de9310 Mirror implementation removals: async invoke, mirrorSystemOf(port), Mirror.mirrors.
(API was removed in r29492)

R=ahe@google.com, gbracha@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29698 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 21:01:59 +00:00
rmacnak@google.com f3384bf0eb Hide ClosureMirror.findInContext behind a flag for 1.0.
Test findInContext does not wildcard privates. Fix confused test and implementation that expected inheritance of static members.

BUG=http://dartbug.com/13656
R=ahe@google.com, asiva@google.com, gbracha@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29697 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 20:50:17 +00:00
asiva@google.com 545bec0843 Cleanup StaticResolveType, it does not seem to be used anywhere.
R=regis@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29696 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 20:41:59 +00:00
rmacnak@google.com 05bd81f872 Align behavior of VM's ObjectMirror.setField with language semantics.
R=ahe@google.com, asiva@google.com, gbracha@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29692 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 20:21:01 +00:00
lrn@google.com 5cd6aace2b Change bool.fromEnvironment to recognize "true" and "false" and use default for rest.
R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29672 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 14:05:28 +00:00
lrn@google.com 66959d9dbf Change int.fromEnvironment in VM to use same code as int.parse.
R=fschneider@google.com, sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29670 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 13:45:39 +00:00
lrn@google.com eb9e33e328 Update documentation on .fromEnvironment. Make bool default be false.
I want more text, and examples of usage, alternative usage, etc.

R=sgjesse@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@29657 260f80e4-7a28-3924-810f-c04153c831b5
2013-10-31 09:33:18 +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