Commit Graph

699 Commits

Author SHA1 Message Date
John Messerly e3836901c3 Make DateTime use in the SDK typed
R=leafp@google.com

Review URL: https://codereview.chromium.org/2004463004 .
2016-05-23 09:17:03 -07:00
Leaf Petersen e6e5635a83 Optimize const construction
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1998113004 .
2016-05-20 17:53:28 -07:00
John Messerly 1e0295d4a5 fix performance of setType
it was mutating the class (e.g. JSArray<int>) every time an instance was constructed (!)

R=leafp@google.com

Review URL: https://codereview.chromium.org/1999273002 .
2016-05-20 17:46:13 -07:00
Jacob Richman 41bac633e1 Fix debugger
BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/1997473007 .
2016-05-20 11:11:43 -07:00
John Messerly f950e422b8 fix #577 - correctly toString ES Symbols
R=sra@google.com

Review URL: https://codereview.chromium.org/1993293002 .
2016-05-19 12:33:06 -07:00
Stephen Adams ed77841603 Better boolean conversion tests.
- Same errors as VM & Dartium

  - Failed assertion: boolean expression must not be null
  - type 'int' is not a subtype of type 'bool' in boolean expression

- All boolean conversion contexts use the same logic
- No false positives from combining null and as-bool checks in other contexts

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1993023003 .
2016-05-19 12:04:59 -07:00
Leaf Petersen 220553b7e7 Future flattening at runtime.
This implements basic one-level future flattening of the runtime
types.

BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1997473002 .
2016-05-18 15:47:26 -07:00
Stephen Adams 0235eba4b9 Updates to collection_patch.dart
BUG=
R=leafp@google.com

Review URL: https://codereview.chromium.org/1987043002 .
2016-05-18 15:10:40 -07:00
Bob Nystrom 1e5b3af2e0 Move generated files to gen/.
- The generated SDK goes into gen/patched_sdk.
- Expanded multitests go into gen/codegen_tests.
- Compiled tests go into gen/codegen_output.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1988503002 .
2016-05-18 13:48:10 -07:00
Stephen Adams 4cf7ee3332 Use _extensionType for detecting prototype inheritance.
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1988683004 .
2016-05-18 11:14:26 -07:00
Stephen Adams 5ed8b5ecab Misc doc-only updatee, rerun build_sdk.
TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1994473002 .
2016-05-17 20:51:53 -07:00
Stephen Adams 69d11e8df8 Misc updates (mostly doc)
TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1987963003 .
2016-05-17 20:27:23 -07:00
John Messerly d2b6f53630 fix #470, string interpolation now respects Dart toString
R=sra@google.com

Review URL: https://codereview.chromium.org/1989663002 .
2016-05-17 17:23:57 -07:00
Vijay Menon 9e816ffbef Wrap and unwrap types in dart:mirrors
This is pretty nasty - just the minimum to get us back to where we were before I think.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org/1989593002 .
2016-05-17 15:56:01 -07:00
Vijay Menon 7a9da0081b Provide option to suppress mirrors metadata
Fixes #268

Probably too small to affect perf, but I'm looking into adding some more for mirrors and don't want it on by default.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1986693003 .
2016-05-17 15:42:26 -07:00
Bob Nystrom d95a368e70 Update dart:collection.
This doesn't include the copious changes in collection_patch.dart
because I believe (1) those are quite old and (2) are dart2js specific.

The changes here have basically no effect on DDC, but it at least gets
us a little better test coverage and reduces noise in the diffs.

R=sra@google.com

Review URL: https://codereview.chromium.org/1977003002 .
2016-05-17 15:39:52 -07:00
John Messerly 0cedeb49af simplify constructors, fixes #564
we still have an init method, for better or worse, to break out of ES6 restrictions

The idea here is default Dart constructor (really an initialization method) is always called `new` instead of the class name. We already do this for unnamed factory.

R=leafp@google.com

Review URL: https://codereview.chromium.org/1965213003 .
2016-05-17 14:36:56 -07:00
Vijay Menon eef9bb5b5a Speed up global tool
Use parsedirectives instead of resolution - this is much faster.

R=leafp@google.com

Review URL: https://codereview.chromium.org/1987723002 .
2016-05-17 09:29:03 -07:00
Stephen Adams 69337e11d4 Minimal patch to collections to use correct LinkedHashMap for map literals.
TBR=leafp@google.com

Review URL: https://codereview.chromium.org/1982953002 .
2016-05-16 20:26:49 -07:00
Vijay Menon d15a603538 Allow the SDK to be set via a summary file
The generated summary file matches the generated DDC sdk - i.e., it
does not include dart:io.  I modified the codegen_tests to the summary
and had to prune the parts of unittest that relied on dart:io.

Paul / Konstantin: can one of you please look at the summary part?

Bob: can you please look at the unittest changes?

R=rnystrom@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/1982853002 .
2016-05-16 17:10:08 -07:00
Stephen Adams 6852dba63f Dont install methods if implementation superclass corresponds to an installed extension class
BUG=
R=leafp@google.com

Review URL: https://codereview.chromium.org/1979863002 .
2016-05-16 15:03:46 -07:00
Paul Berry 3b9d8f23f8 Remove unsupported libraries from libraries.dart.
These libraries are not supported by dev_compiler, hence the source
files that declare them don't exist in tool/input_sdk/lib.  Removing
them from `libraries.dart` will allow the analyzer to build a summary of
dev_compiler's fork of the SDK.

R=vsm@google.com

Review URL: https://codereview.chromium.org/1980963002 .
2016-05-16 11:19:25 -07:00
Vijay Menon 88870d0194 Migrate dart2js stubs for dart:io
Modifies tests to use our SDK.  Didn't prune io dependences to make
sure the stubs above work.  :-)

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1976103003 .
2016-05-16 08:23:41 -07:00
Bob Nystrom 4a51a187d3 Upgrade to the latest dart:convert.
This fixes html_escape_test as well as codec1_test.

R=vsm@google.com

Review URL: https://codereview.chromium.org/1978963002 .
2016-05-13 16:33:35 -07:00
Bob Nystrom 2883b19b9c Upgrade StackTrace to the latest SDK version.
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1967383002 .
2016-05-12 10:31:04 -07:00
Jacob Richman 548f1393a3 Work around is check issue causing zone error handlers to never fire. Update test expectations to reflect the correct expectations.
BUG=
R=leafp@google.com

Review URL: https://codereview.chromium.org/1968323002 .
2016-05-12 09:33:05 -07:00
Harry Terkelsen 382996f41c update dart:math
BUG=
R=rnystrom@google.com

Review URL: https://codereview.chromium.org/1967773005 .
2016-05-12 09:03:11 -07:00
Leaf Petersen d616dc339a Miscellaneous runtime fixes.
Shaves some time off of the sample app startup.

BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1969093002 .
2016-05-11 17:20:40 -07:00
Vijay Menon 4869a0641d Modify global compile tool to compile by package
This produces output closer to what we get in bazel - you may want to use this to analyzer load perf.  It will also let me drill down on individual compile steps.

Using process & async adds complexity, but a lot of speedup over doing it linearly.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1965013003 .
2016-05-11 14:56:21 -07:00
John Messerly dc955ff124 avoid spread args
R=sra@google.com, vsm@google.com

Review URL: https://codereview.chromium.org/1968193002 .
2016-05-11 13:44:05 -07:00
John Messerly 825737dc13 fuse some null checks with type checks, introduce a special bool variant
fixes #536

R=sra@google.com

Review URL: https://codereview.chromium.org/1964263002 .
2016-05-11 11:16:00 -07:00
Harry Terkelsen 97ec1f79d6 always emit lazy field if overriding static
We used to emit an eager field if a static was overriding a static field
in a superclass because this is valid ES6. However, even if the static
field is not synthetic in the superclass, it might still be emitted as a
lazy static. The safest way is just to emit a lazy field for static
overrides always.

fixes #522

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/1966763004 .
2016-05-11 11:09:03 -07:00
John Messerly 85d3071fba remove canonicalType
it is unused now since the extension type system replaced it.

there's a potentially interesting use case supported, e.g. ES6 subclasses of JS Array, but we can ignore that for now (IMO)

R=sra@google.com

Review URL: https://codereview.chromium.org/1967743005 .
2016-05-11 10:56:58 -07:00
Leaf Petersen 2031f66a95 Canonicalize function types. Brings sample app load time
down to the 6-7s range.

BUG=
R=sra@google.com

Review URL: https://codereview.chromium.org/1969523002 .
2016-05-11 10:08:29 -07:00
Bob Nystrom 9cf428afdd Delete work-in-progress script.
Oops, didn't mean to check this in.

R=sra@google.com

Review URL: https://codereview.chromium.org/1969663002 .
2016-05-11 09:54:52 -07:00
Stephen Adams 098508c533 Update _charCodeApply, makeFixedStringUnmodifiable
TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1969683002 .
2016-05-10 18:44:33 -07:00
Stephen Adams a2ebf2ada1 Speed up String.fromCharCodes a bit
About 4x speedup of convert/ascii_test.dart by removing dsend in inner loop.

R=leafp@google.com

Review URL: https://codereview.chromium.org/1968783002 .
2016-05-10 17:30:19 -07:00
Harry Terkelsen 32fd2f8215 update Map
R=sra@google.com

Review URL: https://codereview.chromium.org/1963723003 .
2016-05-10 16:19:19 -07:00
John Messerly a7f812b676 fix #552, Object members on native types
We initially hard coded a few of these. That worked until native_typed_data and html were added. Those two libraries have a lot of native types.

This also fixes TypeRep to extend dart:core Object, and fixes the dart:_runtime so we can write Dart classes. Cleans up a few of the JS builtins as well.

R=vsm@google.com

Review URL: https://codereview.chromium.org/1962823002 .
2016-05-10 11:35:38 -07:00
Bob Nystrom e535970604 Update dart:convert and dart:core Uri.
I started trying to get the convert tests all cleaned up and passing
but realized I was going down a rathole. So, for now, all of the slow
or failing ones are just skipped.

BUG=
R=sra@google.com

Review URL: https://codereview.chromium.org/1965563003 .
2016-05-10 10:25:38 -07:00
Leaf Petersen 3cbf0e4a92 Delete logging code
TBR=vsm@google.com

BUG=

Review URL: https://codereview.chromium.org/1961393003 .
2016-05-10 10:09:30 -07:00
Leaf Petersen 97d91f620c Faster ignore.
Put a cache in front of the function which tests for failures to
ignore.

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/1963733003 .
2016-05-10 09:43:20 -07:00
Stephen Adams 783a1f45c2 Update linked_list, queue, splay_tree
Now identical to (pending) CL from main branch.

TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1966473002 .
2016-05-09 14:14:29 -07:00
Stephen Adams c2e170fb1f Update mirrors.dart
This is a comments-only update.
Several APIs need to be visited to be made to work for DDC.
These are much clearer now.

TBR=vsm@google.com

BUG=

Review URL: https://codereview.chromium.org/1955293003 .
2016-05-08 18:31:18 -07:00
Stephen Adams 8da8c3efbf Update dart:typed_data
This is all all-documentation change.

TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1956263002 .
2016-05-08 18:12:50 -07:00
Leaf Petersen 86c4dc01a1 Only use white list on indefinite checks
BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/1953823005 .
2016-05-06 19:14:47 -07:00
Stephen Adams a5d1626299 Update date_time.
TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1952133007 .
2016-05-06 17:52:21 -07:00
Stephen Adams 090110fb65 Update native_typed_data
TBR=vsm@google.com

Review URL: https://codereview.chromium.org/1956993003 .
2016-05-06 17:26:25 -07:00
Stephen Adams 65e8266447 Update collection (list / map / iterable) printing.
Remove methods from IterableBase that are now on Iterable.

And random comments from other files.

Review URL: https://codereview.chromium.org/1956933002 .
2016-05-06 16:03:44 -07:00
Leaf Petersen 7c634031e5 Fix void subtype checks.
BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/1958683002 .
2016-05-06 14:04:03 -07:00