lrn@google.com
e8ca26953e
Reduce foot-print of Error.safeToString on strings.
...
Use existing JSON encoding instead of a custom encoding.
This allows dart2js to use the system JSON stringifier directly.
R=sra@google.com
Review URL: https://codereview.chromium.org//718053003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41704 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-13 06:47:17 +00:00
vegorov@google.com
29f021439a
Infer range for BIT_XOR.
...
When selecting representations unbox integer phis that have Int32 range and have only constants or boxing operations flowing into them.
BUG=http://dartbug.com/13869
R=fschneider@google.com
Review URL: https://codereview.chromium.org//712993005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41667 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-11 14:51:10 +00:00
zra@google.com
0219bdb81a
Regularize naming to make BUILD.gn files easier to write.
...
Review URL: https://codereview.chromium.org//703693002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41510 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-04 22:03:57 +00:00
lrn@google.com
e3d4226c63
Make JSON.fuse(UTF8) be more efficient by not creating intermediate string.
...
Adds JsonUtf8Encoder class that can be used directly, or through jsonEncoder.fuse(utf8Encoder) or jsonEncoder.startChunkedConversion(_Utf8EncoderSink).
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//689043002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41479 260f80e4-7a28-3924-810f-c04153c831b5
2014-11-04 10:25:41 +00:00
regis@google.com
30dce6a5d1
Fix issue 21474 in mirrors.
...
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//690413002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41453 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-31 23:16:11 +00:00
fschneider@google.com
876193b31a
Make CTX allocatable by the register allocator.
...
This change makes CTX available by not caching the current
context while in Dart code. Instead the current context
is held in a local variable (:saved_current_context_var) and
is passed as argument in CTX at calls.
This also simplifies a lot of code in the debugger: As a result,
Isolate::top_context is not needed anymore since the current context
can always be extracted from a Dart frame.
R=vegorov@google.com
Review URL: https://codereview.chromium.org//678763004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41422 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-30 15:42:38 +00:00
lrn@google.com
8050a0392b
Fix assertion not holding (calling with start==end) and typo.
...
Review URL: https://codereview.chromium.org//677423002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41317 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-27 14:00:13 +00:00
lrn@google.com
7485b6fff2
Fix type-errors.
...
R=whesse@google.com
Review URL: https://codereview.chromium.org//680073002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41315 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-27 13:33:49 +00:00
lrn@google.com
a3dd8cd26f
Fix typo reutrn -> return typo.
...
R=whesse@google.com
Review URL: https://codereview.chromium.org//684433003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41314 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-27 13:05:21 +00:00
lrn@google.com
e2e17c3f26
Make JSON parsing work as a chunked conversion sink.
...
This allows JSON parsing to work on individual chunks of source instead
of collecting and concatenating all the parts before parsing.
This is made in anticipation of having a UTF-8 version that parses directly
on the input codes, without creating a String first.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//649113005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41311 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-27 12:11:39 +00:00
iposva@google.com
c7c9d5d12f
Fix http://dartbug.com/21335
...
- Make the VM internal AssertionError, TypeError and CastError implement
the public classes instead of patching them.
R=asiva@google.com , lrn@google.com
Review URL: https://codereview.chromium.org//669733004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@41231 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-21 17:00:16 +00:00
lrn@google.com
4d4c8a6332
Make Iterable.toSet say that it returns a Set with the same equality as the Iterable's contains method.
...
Let's consider whether this is really desirable once more.
It seems messy, but so does not doing it.
R=ajohnsen@google.com , floitsch@google.com
Review URL: https://codereview.chromium.org//451633003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40893 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-03 07:43:10 +00:00
lrn@google.com
d8a2043098
Fix wrong limit on list index in double.parse.
...
Review URL: https://codereview.chromium.org//623073002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40892 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-03 07:03:45 +00:00
lrn@google.com
3192c983bf
Dart version of double.parse that works for numbers that can be represented exactly as doubles.
...
BUG= http://dartbug.com/17711
R=vegorov@google.com
Review URL: https://codereview.chromium.org//520693004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40891 260f80e4-7a28-3924-810f-c04153c831b5
2014-10-03 06:01:44 +00:00
regis@google.com
3cf27d550e
Disable 2 intrinsics causing optimizer issues (under investigation).
...
Rename 2 intrinsics (was not the issue).
Added a static cast to eliminate a warning on Windows.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//616983003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40825 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-30 23:01:40 +00:00
regis@google.com
f7ac8841a9
Provide ia32 intrinsics for bigint add, sub, quotient digit estimation, and
...
Montgomery mulMod.
Refactored bigint dart code to allow for the above intrinsics.
Added support for unsigned division on ia32 and added assembly tests.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//620553002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40822 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-30 18:49:41 +00:00
regis@google.com
cff788380b
Eliminate global argument passing list.
...
Refactor _mulAdd to perform carry propagation and update intrinsic on ia32.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//610433003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40816 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-30 16:47:48 +00:00
regis@google.com
50086cbc75
Resubmit reverted r40623 unchanged after GC issue fixed.
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//603943005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40815 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-30 16:21:23 +00:00
lrn@google.com
28937c86ae
Optimize _GrowableArray._join and _StringBase._interpolate.
...
R=fschneider@google.com
Review URL: https://codereview.chromium.org//551823002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40800 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-30 08:28:00 +00:00
lrn@google.com
2ef0e0b993
Fix bad call of RangeError.value in String.fromCharCodes.
...
Review URL: https://codereview.chromium.org//608213002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40760 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-29 09:33:08 +00:00
lrn@google.com
de514055bf
Change restrictions on start/end on String.fromCharCodes.
...
Must now be 0 <= start <= end <= iterable.length.
R=sgjesse@google.com
Review URL: https://codereview.chromium.org//605213002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40755 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-29 08:15:49 +00:00
lrn@google.com
b89409c112
Change type of multiplier to int, not _Smi.
...
Review URL: https://codereview.chromium.org//603353003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40704 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-26 12:30:35 +00:00
lrn@google.com
d57732d359
Optimize int.parse with a radix.
...
Handles bignums by parsing chunks of of digits into smis, then
combining the smi into a (potential) bignum, using smi arithmetic as
much as possible.
Use the optimized version for radix 10 and 16 too, instead of going to runtime.
R=fschneider@google.com
Committed: https://code.google.com/p/dart/source/detail?r=40702
Review URL: https://codereview.chromium.org//596763002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40703 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-26 12:13:47 +00:00
lrn@google.com
15ad26af35
Optimize int.parse with a radix.
...
Handles bignums by parsing chunks of of digits into smis, then
combining the smi into a (potential) bignum, using smi arithmetic as
much as possible.
Use the optimized version for radix 10 and 16 too, instead of going to runtime.
R=fschneider@google.com
Review URL: https://codereview.chromium.org//596763002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40702 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-26 12:04:43 +00:00
lrn@google.com
8bba32d131
Make String.fromCharCodes take start/end.
...
This avoids having to make a sublist of a list of character codes before passing it to String.fromCharCodes.
new String.fromCharCodes(codes.sublist(start, end))
becomes just
new String.fromCharCodes(codes, start, end)
R=floitsch@google.com , sgjesse@google.com
Review URL: https://codereview.chromium.org//515183002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40672 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-25 10:45:24 +00:00
whesse@google.com
1f87b5feba
Revert r40623, "Refactor bigint _sqrTo in preparation of intrinsification."
...
This reverts commit r40623, https://codereview.chromium.org//600533002 , which
is failing snapshot generation on x64 and arm architectures.
BUG=dartbug.com/21061
R=ricow@google.com
Review URL: https://codereview.chromium.org//603493002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40628 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-24 09:40:19 +00:00
regis@google.com
edd503f7d0
Refactor bigint _sqrTo in preparation of intrinsification.
...
Provide _sqrAdd intrinsic on ia32.
Review URL: https://codereview.chromium.org//600533002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40623 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-24 01:51:04 +00:00
ajohnsen@google.com
0491f4e887
Per isolate package root.
...
BUG=
R=iposva@google.com , ricow@google.com , sgjesse@google.com , turnidge@google.com
Committed: https://code.google.com/p/dart/source/detail?r=40534
Review URL: https://codereview.chromium.org//545483002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40581 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-23 05:46:14 +00:00
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
koda@google.com
667454a233
Support old-space allocation in generated code (bump block only for now).
...
First steps towards general pretenuring support.
* Generalize Heap::Top/EndAddress.
* Add testing flag to exercise new code paths.
* Also update the slow-case runtime calls, to ensure a fresh block will be allocated in old.
Next steps are general invalidation of the generated code and adding a policy that doesn't blow up the store buffers), and freelist allocation.
Review URL: https://codereview.chromium.org//578443003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40530 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-19 23:46:22 +00:00
asiva@google.com
302c93b050
1. Add user tag to the pointers traversed in the object store
...
2. Added support for UserTag objects in a full snapshot.
R=johnmccutchan@google.com
Review URL: https://codereview.chromium.org//583583007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40508 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-19 18:00:13 +00:00
regis@google.com
879043ba6f
Intrinsify Bigint 'multiply and accumulate" function on ia32.
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//582963003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40485 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-19 02:05:00 +00:00
srdjan@google.com
5ef243e688
Make sure Bigint._digits is always a Uint32List and bever null. Adapt type information for get:_digits.
...
R=regis@google.com
Review URL: https://codereview.chromium.org//580903004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40463 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-18 21:18:25 +00:00
lrn@google.com
38bb5d2a36
Don't use identical for null.
...
This was just a test to see if it generated the same code (it did),
but I forgot to revert it again.
R=fschneider@google.com
Review URL: https://codereview.chromium.org//578213002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40432 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-18 11:56:01 +00:00
regis@google.com
2be1822329
Cache value of '_digits' and '_used' fields in a local variable as appropriate.
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//577093003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40409 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-17 22:22:42 +00:00
regis@google.com
d3420517e2
Remove unnecessary check in bigint division.
...
Review URL: https://codereview.chromium.org//576253002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40385 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-17 18:37:39 +00:00
lrn@google.com
104119e15d
Add argument error for int.parse(null).
...
Slightly tweak _tryParseSmi to generate slightly less code.
BUG= http://dartbug.com/17774
R=fschneider@google.com
Review URL: https://codereview.chromium.org//581593002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40373 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-17 12:51:20 +00:00
regis@google.com
4f77a36faa
Estimate quotient digit in Bigint division using an integer division instead of
...
a floating point division.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//574213002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40365 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-17 01:44:34 +00:00
regis@google.com
21369fc864
Temporarily add a public modPow method to int interface.
...
Make Bigint modPow support non-bigint arguments.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//570563004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40335 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-16 18:19:12 +00:00
regis@google.com
055fd61999
Temporarily add a public modPow method to _Bigint class.
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//567093002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40271 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-15 19:29:15 +00:00
lrn@google.com
54ffc4f000
Call special VM interpolate for single element interpolation.
...
Fixed at the intermediate language level.
R=fschneider@google.com
Review URL: https://codereview.chromium.org//563973004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40232 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-15 07:19:23 +00:00
rmacnak@google.com
cefb21b6a3
Narrow String::CharAt from int32_t to uint16_t.
...
R=asiva@google.com
Review URL: https://codereview.chromium.org//560113002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40178 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-11 20:55:36 +00:00
regis@google.com
9ff3cd3342
Fix wrong conversion from double to bigint in overriden operators of new bigint.
...
Fix ambiguous call to pow on Windows.
Fix big_integer_vm_test to use numbers large enough to actually be bigint.
Re-enable dart2js tests.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//559203003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40122 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-10 22:26:59 +00:00
regis@google.com
0220e41d72
New bigint implementation in the vm.
...
R=srdjan@google.com
Review URL: https://codereview.chromium.org//509153003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@40061 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-09 21:47:44 +00:00
iposva@google.com
92f2698abe
- Refactor the way X.fromEnvironment is implemented.
...
- Predefine 'dart.isVM' to be 'true'.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//546053002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39986 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-08 18:23:05 +00:00
mlippautz@google.com
800508d980
Bubble up exceptions throw async/await.
...
This CL addresses bubbling up exceptions through async and await. It adds another parameter to the continuation that can be used to rethrow an error.
BUG=
R=hausner@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//542893004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39926 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-05 19:50:34 +00:00
vegorov@google.com
c431dbcb3f
Cleanup throwing of the RangeError in the runtime to remove duplicated code.
...
Improve List._copyFromObjectArray native performance for large arrays by using PassiveObject instead of Object.
R=iposva@google.com
BUG=
Review URL: https://codereview.chromium.org//533483003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39911 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-05 13:15:56 +00:00
lrn@google.com
0acdec95ff
Specify packageRoot parameter to Isolate.spawnUri.
...
R=ajohnsen@google.com
Review URL: https://codereview.chromium.org//439723004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39903 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-05 09:11:54 +00:00
vegorov@google.com
a1e2035eda
Improve List.sublist and List.toList for large lists.
...
- Merge array allocation and List._copyFromObjectArray to provide memmove fast path;
- In optimizer given v2 = CreateArray(v0, v1) fold v2.length load to v1;
BUG=
R=iposva@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//536043002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@39831 260f80e4-7a28-3924-810f-c04153c831b5
2014-09-03 20:36:01 +00:00