Commit Graph

2395 Commits

Author SHA1 Message Date
asiva@google.com 417659c2dd Adapt remaining dart:scalarlist tests to use dart:typeddata
Review URL: https://codereview.chromium.org//13137002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20643 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-28 20:52:38 +00:00
iposva@google.com 3a858ca8a9 - Consolidate String sources in the runtime libraries.
Review URL: https://codereview.chromium.org//13097009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20578 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-27 20:57:25 +00:00
johnmccutchan@google.com d516a7acde Review changes
Review URL: https://codereview.chromium.org//12982010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20559 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-27 14:44:15 +00:00
johnmccutchan@google.com e07063f389 Revert 12534006
Review URL: https://codereview.chromium.org//13093005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20526 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-26 17:40:25 +00:00
johnmccutchan@google.com 7b1d3b9134 Port SIMD types from dart:scalarlist to dart:typeddata.
Review URL: https://codereview.chromium.org//12534006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20522 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-26 16:50:26 +00:00
asiva@google.com 5642025044 Handle TypedDataView objects in Dart_TypedDataAcquireData and
Dart_TypedDataReleaseData
Review URL: https://codereview.chromium.org//12937010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20482 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-25 20:18:44 +00:00
asiva@google.com 3261c500d8 Implement creation of ByteData objects using the Dart API.
Review URL: https://codereview.chromium.org//12938010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20396 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-22 18:14:37 +00:00
johnmccutchan@google.com 3d4778e2c2 SIMD plumbing
Review URL: https://codereview.chromium.org//12871015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20287 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-20 20:29:00 +00:00
floitsch@google.com 6c40cac7a9 Remove streamSpawnUri and mangler.
Add more tests.
Make dart2js send sinks.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20213 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-19 16:12:13 +00:00
fschneider@google.com 86da5111ad Replace scalarlist optimizations and split external array loads into two IL instructions.
This CL removes optimized access for scalarlist, and only the new TypedData classes
are optimized. I changed the runtime libraries core and math to use typedData
instead of scalarlist (Uint16List is used in StringBuffer, Uint32List by Math.random).

Instead of using LoadIndexed for internal and external arrays,
split external loads into a load of the backing store and a load
of the element.

v3 <- LoadIndexed(v1, index)

becomes

v2 <- LoadUntagged(v1, ExternalTypedData::data_offset)
v3 <- LoadIndexed(v2, index);

For this I introduce two new representations in the IL:

 kUntagged (for values that hold a untagged pointer) and
 
 kNoRepresentation (for instructions accept any input
 representation)

Deoptimization does not need to know about kUntagged
since these values can never occur in the environment.

Also with this change:
* fix COMPILE_ASSERT and use it in one place.
* Cleanup IL printer output of deopt ids.
Review URL: https://codereview.chromium.org//12871010

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20198 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-19 12:06:23 +00:00
floitsch@google.com 7055e7b96a Add unhandledExceptionCallback to streamSpawnFunction.
Also throw error in dart2js version.

BUG= http://dartbug.com/9208

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20172 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-18 19:09:19 +00:00
asiva@google.com 453e8fe924 Add the native intrinsic TypedData_setRange to optimize the setRange call when the destination and source of setRange are of the same typeddata type.
Review URL: https://codereview.chromium.org//12881006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20078 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-15 13:33:11 +00:00
lrn@google.com 844cd39fad Change getRange to sublist. Make getRange deprecated.
This changes the exception behavior of getRange. It used to accept
a length of zero, no matter what start value. Now the start value
must be a valid list index.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20064 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-15 09:15:39 +00:00
lrn@google.com bab488a4fc Allow String.fromCharCodes to work directly on a GrowableObjectArray.
Avoids copying the data from the internal ObjectArray into a new
ObjectArray before creating the string.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20060 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-15 07:22:12 +00:00
floitsch@google.com 76d507cb6f Add List.insert.
BUG= http://dartbug.com/5375

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20037 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-14 17:38:14 +00:00
asiva@google.com 3316092e2d Fix typo in method calls for [] and []= operators in views.
Review URL: https://codereview.chromium.org//12531009

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20033 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-14 16:47:51 +00:00
asiva@google.com 5b0ee63836 Use offsetInBytes and not index in the get/set accessors of views.
Review URL: https://codereview.chromium.org//12608006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@20003 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-14 11:38:17 +00:00
floitsch@google.com c8f2a81f07 Rename Timer.repeating to Timer.periodic.
Review URL: https://codereview.chromium.org//12793003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19925 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-13 13:02:13 +00:00
ajohnsen@google.com 3eab4cea7f Fix typo in typeddate.dart.
Also adds test for setting/getting directly on ByteData.

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19909 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-13 07:45:38 +00:00
floitsch@google.com 65718c56df Rename XMatching to XWhere.
For example firstMatching -> firstWhere.

BUG= http://dartbug.com/8664
BUG= http://dartbug.com/8337

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19880 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-12 17:34:49 +00:00
asiva@google.com 69d0484d2a - Use dart:typedata types in the Dart API calls.
- Change the dart/io code to not use dart:scalarlist
Review URL: https://codereview.chromium.org//12730013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19848 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-12 10:57:48 +00:00
floitsch@google.com cead1d41f1 ceil/floor/truncate/round return integers.
This CL supercedes https://codereview.chromium.org/11748016/

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19810 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-11 18:54:37 +00:00
lrn@google.com 53f877edb7 Rename String.concat to operator+.
Review URL: https://codereview.chromium.org//12441003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19788 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-11 12:59:17 +00:00
floitsch@google.com cf605283e2 Add first version of runAsync.
Review URL: https://codereview.chromium.org//12380060

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19768 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-11 10:08:28 +00:00
asiva@google.com 3b5c3e69dd Add the allocator intrinsics for dart:typeddata implementation.
Review URL: https://codereview.chromium.org//12547018

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19752 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-09 00:05:57 +00:00
floitsch@google.com dd48256fe5 Remove deprecated StringBuffer.add, addAll and addCharCode.
Review URL: https://codereview.chromium.org//12473003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19690 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-08 13:07:18 +00:00
lrn@google.com cd9bcfe956 Remove references to capital-D-Dynamic.
Review URL: https://codereview.chromium.org//12615002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19687 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-08 11:57:28 +00:00
lrn@google.com a5a93492d9 Change VM's string-buffer patch to use a Uin16Array as backing buffer.
Review URL: https://codereview.chromium.org//12421002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19679 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-08 10:21:52 +00:00
asiva@google.com 3f14a14ee7 Implement 'dart:typeddata' directly in the VM instead of using 'dart:scalarlist'
Review URL: https://codereview.chromium.org//12544015

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19656 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-07 21:50:33 +00:00
iposva@google.com b25d694633 - Avoid wrapping into Mints when generating random numbers.
- Update Random number tests.
- Fix String.fromCharCodes signature.
Review URL: https://codereview.chromium.org//12622002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19642 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-07 17:19:47 +00:00
lrn@google.com f79786d726 Fix String.fromCharCodes to work with iterables.
BUG=http://dartbug.com/8922

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19602 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-07 09:14:43 +00:00
floitsch@google.com 54ffaab251 Fix typeddata. Was still using Arrays.
Review URL: https://codereview.chromium.org//12443004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19480 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-05 13:55:14 +00:00
floitsch@google.com fd28ec5b2e Move Arrays class to private library.
Committed: https://code.google.com/p/dart/source/detail?r=19375
Reverted: http://code.google.com/p/dart/source/detail?r=19420

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19476 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-05 13:24:55 +00:00
asiva@google.com 97f6dee777 First step towards implementing dart:typeddata library.
Review URL: https://codereview.chromium.org//12313088

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19427 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-04 22:11:45 +00:00
floitsch@google.com 5505496990 Revert "Move Arrays class to private library."
This reverts commit 19375.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19420 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-04 21:27:38 +00:00
floitsch@google.com d91bca2813 Add List.asMap().
Review URL: https://codereview.chromium.org//12391046

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19399 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-04 16:57:52 +00:00
lrn@google.com f4300b84a2 Make List.from and Iterable.toList default to not growable.
Review URL: https://codereview.chromium.org//12401002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19391 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-04 14:55:40 +00:00
floitsch@google.com 1d02dc6342 Move Arrays class to private library.
Review URL: https://codereview.chromium.org//12386072

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19375 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-04 10:31:02 +00:00
floitsch@google.com 9722e27876 Remove deprecated IllegalJSRegExpException class.
Review URL: https://codereview.chromium.org//12317130

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19297 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-01 12:14:45 +00:00
asiva@google.com 48418a75f7 Fix stack frame index numbers for full stack traces
It used to be:
#0      getCurrentStackTrace (file:///tmp/junk.dart:3:5)
#0      func1 (file:///tmp/junk.dart:10:29)
#1      func2 (file:///tmp/junk.dart:14:8)
#2      func3 (file:///tmp/junk.dart:18:8)
#3      func4 (file:///tmp/junk.dart:22:8)
#4      main (file:///tmp/junk.dart:26:8)
(Notice the two #0 frames on top).

Now it will print this as:
#0      getCurrentStackTrace (file:///tmp/junk.dart:3:5)
#1      func1 (file:///tmp/junk.dart:10:29)
#2      func2 (file:///tmp/junk.dart:14:8)
#3      func3 (file:///tmp/junk.dart:18:8)
#4      func4 (file:///tmp/junk.dart:22:8)
#5      main (file:///tmp/junk.dart:26:8)
Review URL: https://codereview.chromium.org//12381030

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19272 260f80e4-7a28-3924-810f-c04153c831b5
2013-03-01 03:00:52 +00:00
floitsch@google.com 51212d24ed Remove deprecated ms arguments for Timer and Future.
Review URL: https://codereview.chromium.org//12342014

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19220 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-28 13:24:12 +00:00
srdjan@google.com 59386b206c Intrinsify OnebyteString's hashcode. Next step is to inline it.
Review URL: https://codereview.chromium.org//12335138

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19182 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-27 22:58:59 +00:00
asiva@google.com 3c90369ba6 Add functionality to get full stack trace when exceptions are thrown.
This should address the issue raised in 7813.

try {
 ...
 ...
} on Object catch(e, s) {
 print(s.fullStackTrace);  // This should print the full stack trace.
}
Review URL: https://codereview.chromium.org//12316116

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19179 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-27 22:47:06 +00:00
iposva@google.com 5c71abedff - Do not use the ? operator in the List factory.
Review URL: https://codereview.chromium.org//12335146

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19178 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-27 22:36:22 +00:00
lrn@google.com 6b4f4b1bab Change new List(n) to return fixed length list.
Deprecate List.fixedLength, add List.filled.

Make Iterable.toList and List.from take "growable" argument,
defaulting to false.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19112 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-27 08:45:04 +00:00
srdjan@google.com 6a538bdec4 Dart VM compiler cannot optimize methods with try/catch yet, factor the code out -> 30% gain on a Json benchmark.
Review URL: https://codereview.chromium.org//12330149

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19085 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-26 21:48:22 +00:00
iposva@google.com b564104ea5 - Properly load the core libraries as libraries and not as scripts.
This will honor their imports and library names.
Review URL: https://codereview.chromium.org//12321082

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19017 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-25 23:25:29 +00:00
johnmccutchan@google.com 2e216391f3 Simd128Float32, Simd128Mask, and Simd128Float32List additions for dart:scalarlist
Review URL: https://codereview.chromium.org//12303013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@19001 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-25 21:12:50 +00:00
regis@google.com 163db76189 Hook up simulator (if needed) when calling Dart code.
Merge identical InvokeDynamic and InvokeStatic to InvokeFunction.
Remove redundant argument from InvokeClosure.
Review URL: https://codereview.chromium.org//12315087

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18994 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-25 19:30:29 +00:00
srdjan@google.com 33435b7e73 Improve perfromance of integer parsing for Smi-s.
Review URL: https://codereview.chromium.org//12328068

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@18990 260f80e4-7a28-3924-810f-c04153c831b5
2013-02-25 18:32:46 +00:00