Commit Graph

2256 Commits

Author SHA1 Message Date
John Messerly 18769af805 restore code_generator file from b770039, the nSM mock fix
Review URL: https://codereview.chromium.org/2189683002 .
2016-07-27 09:49:58 -07:00
Brenna Milligan d7c7c19c54 Library children object fix
R=alanknight@google.com, jacobr@google.com

Review URL: https://codereview.chromium.org/2176233002 .
2016-07-25 17:44:59 -07:00
Brenna Milligan 3d03bee32d Library custom formatters
R=alanknight@google.com, jacobr@google.com, jmesserly@google.com

Review URL: https://codereview.chromium.org/2164763005 .
2016-07-22 14:15:53 -07:00
John Messerly c3ee6dc5ee fix #606, allow specifying the summary file extension
R=paulberry@google.com

Review URL: https://codereview.chromium.org/2176763002 .
2016-07-22 11:39:35 -07:00
John Messerly c1e97b495f fix #603, support mock objects
if noSuchMethod is used to implement an abstract member, this will be detected and appropriate code will be generated.

R=leafp@google.com

Review URL: https://codereview.chromium.org/2158173003 .
2016-07-19 13:24:02 -07:00
Stan Manilov 144d3dbd0c Catch file-not-found exception
If a non-existing file was passed to DDC before it would just throw an
uncaught exception and crash. Now the exception is caught and an error
message is printed together with the usage information.

BUG=https://github.com/dart-lang/dev_compiler/issues/605
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2161693002 .
2016-07-18 14:37:43 -07:00
John Messerly dd1f2acb78 Update patch_sdk.sh
make it work from any directory
2016-07-13 13:31:25 -07:00
John Messerly 71503774d5 Remove the experimental tag from the flag header
If it becomes non-experimental it would break the http link. Experimental note still exists in prose.
2016-07-13 12:03:32 -07:00
John Messerly 0d7101d28d Update STATIC_SAFETY.md
improve optional flags documentation
2016-07-13 12:01:00 -07:00
John Messerly a210c63c28 add a note about experiments and a feedback link 2016-07-13 11:22:26 -07:00
John Messerly 8e971115cd Docs for no-implicit-casts and no-implicit-dynamic
As part of fixing https://github.com/dart-lang/sdk/issues/26782, I wanted to be able to link to some documentation for the Analyzer flags.
2016-07-13 11:13:51 -07:00
Brenna Milligan 409fbcf956 Custom formatter popup booleans
BUG=
R=alanknight@google.com

Review URL: https://codereview.chromium.org/2137063003 .
2016-07-11 16:21:04 -07:00
Leaf Petersen e7d49ddd7c Copy browser test output to file
BUG=
R=rnystrom@google.com

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

Committed: https://github.com/dart-lang/dev_compiler/commit/79160a056c0a35adef3542ae4e30fdc451d83612
2016-07-08 12:00:50 -07:00
Leaf Petersen fc696b039c Copy browser test output to file
BUG=
R=rnystrom@google.com

Review URL: https://codereview.chromium.org/2132593003 .
2016-07-08 11:13:18 -07:00
Leaf Petersen 0315595d60 Check in codegen test expectations.
Codegen output is checked into repository to make codegen regressions
more visible (especially readability regressions).

BUG=
R=rnystrom@google.com

Review URL: https://codereview.chromium.org/2128353002 .
2016-07-07 15:57:22 -07:00
Leaf Petersen fceb82f49d Fix null aware generic invocation.
Fixes #600

BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2132763002 .
2016-07-07 13:07:17 -07:00
Brenna Milligan 1ae094d042 Debugger library import with name
BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2125943002 .
2016-07-06 12:07:17 -07:00
John Messerly 1c5f78bb28 Update USAGE.md
Remove obsolete information :)

Still need to better illustrate modular compilation, though.
2016-07-01 11:32:38 -07:00
John Messerly 86d9eb10d0 don't use JS_CONST in dart:html
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2113913003 .
2016-07-01 10:53:27 -07:00
Stan Manilov 72664da9dd Print usage when no source files are passed
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2113203002 .
2016-06-30 17:51:11 -07:00
Jacob Richman f0cde883e9 Change allowInterop to a generic method.
BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2106613002 .
2016-06-29 14:41:32 -07:00
Brenna Milligan 844cfdb990 maxspanlength setter
Merge branch 'master' of https://github.com/dart-lang/dev_compiler

Merge branch 'master' of https://github.com/dart-lang/dev_compiler

comments and 10001 case

naming and logic changes

logic updates and variable renaming

Merge branch 'master' of https://github.com/dart-lang/dev_compiler

Array formatting customized to look like JS

BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2101233004 .
2016-06-28 13:48:41 -07:00
Brenna Milligan d55b213947 Array formatting customized to look like JS
BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2100803007 .
2016-06-28 11:13:51 -07:00
Andrew Krieger 5c9e1244bd Improve message in tool/test.sh
New message instructs developers to run tool/browser_test.sh in order to
actually run tests.

BUG=
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2100363002 .
2016-06-27 17:40:14 -07:00
Andrew Krieger 87bcbf9147 Move type tagging logic out of setSignature
setSignature is only called for classes with constructors or static
members, so previously _runtimeType was only set explicitly on such
classes. Now _runtimeType is not set on any classes except for Object,
and all other types inherit _runtimeType from Object.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2076713002 .
2016-06-27 15:29:15 -07:00
John Messerly d27eda4ffc implement user-defined nSM, Object members on functions
fix #591 and fix #59

R=vsm@google.com

Review URL: https://codereview.chromium.org/2061373003 .
2016-06-22 17:18:52 -07:00
Vijay Menon e8e19b4c5a Verify status of statically failing tests
This should catch tests that suddenly start failing (or passing).

This is an admittedly contrived approach to track compilation failures in
the same runtime logic: the statically failing tests are now compiled
to a trivial output that throws a particular exception.  Ideally, we
wouldn't run these, but it's beneficial to keep status in the same
place.

On my laptop, this only adds ~8s to presubmit (which takes ~2:30 min).

Ideas on alternative approaches welcome.  :-)

R=jmesserly@google.com, leafp@google.com

Review URL: https://codereview.chromium.org/2079373002 .
2016-06-22 06:25:48 -07:00
John Messerly 430e8f15af Partial fix for call methods #542
This fixes the generated code to support these. Subtype checks are not fixed yet.

R=vsm@google.com

Review URL: https://codereview.chromium.org/2069903002 .
2016-06-16 16:38:43 -07:00
Stan Manilov 715c845d85 Add a regression test for bug #587
BUG= https://github.com/dart-lang/dev_compiler/issues/587
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2075493002 .
2016-06-15 16:58:57 -07:00
Stan Manilov 5a0353b3ab Allow constant static fields to overwrite defaults
Now one can overwrite fields like 'name' as 'static const' fields in
their class definition and not get runtime errors.

BUG= https://github.com/dart-lang/dev_compiler/issues/587
R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2071593003 .
2016-06-15 14:03:34 -07:00
John Messerly 477182e88d fix worker_test 2016-06-14 14:54:20 -07:00
John Messerly fe360a9321 make "compile" command optional to address #505 2016-06-14 14:45:00 -07:00
John Messerly d41215cd54 upgrade analyzer version 2016-06-14 14:09:41 -07:00
John Messerly caff16a49a merged 2016-06-14 13:36:18 -07:00
Leaf Petersen 3e5d1d80e6 Fix function subtyping crash
Fixes #588

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/2069653003 .
2016-06-14 09:55:04 -07:00
John Messerly 5c67ae3bcc Use trackCacheDependencies for performance speedup
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2059253003 .
2016-06-13 11:27:03 -07:00
John Messerly 1c0759a60b DDC changes for Analyzer src/task/strong/info.dart refactor
Review CL: https://codereview.chromium.org/2057373003/
2016-06-13 10:37:12 -07:00
Priscilla Lee 5016cbce59 Fixed type error in MapEntry and added keyToStringConfig to display the toString() of a key in a MapEntry preview.
BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2033433007 .
2016-06-08 10:12:53 -07:00
Stephen Adams 68f90ac82b Refactoring assignment
The idea is to have more _emitXXX methods, so that different paths for
the same semantic action (e.g. implicit vs explicit 'this') call the
same _emitXXX method.

This is the first (simplest) step: assignments.

R=jmesserly@google.com

Review URL: https://codereview.chromium.org/2039173005 .
2016-06-07 17:09:46 -07:00
Stephen Adams e68cee47a1 Handle more boolean conversion cases.
We were missing boolean conversion checks on logical operators in a
value context.

TBR=jmesserly@google.com

Review URL: https://codereview.chromium.org/2042883004 .
2016-06-06 19:51:58 -07:00
John Messerly ec945eed6f enable compatiblity with 1.18 SDKs
fixes #584, works around analyzer message #583

R=leafp@google.com

Review URL: https://codereview.chromium.org/2048463002 .
2016-06-06 17:29:02 -07:00
John Messerly 0ec17d170f Fixes #586 - enums should now work in SDK libs
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2045783002 .
2016-06-06 16:08:58 -07:00
Stephen Adams aea2fa1291 Update Symbol.hashCode
New dart2js version avoids inefficient String.hashCode

TBR=vsm@google.com

Review URL: https://codereview.chromium.org/2040963005 .
2016-06-06 12:34:59 -07:00
Stephen Adams 5fd923523b Faster type tests
Put type tests (is, as, type assertion) on the types as 'is', 'as' and '_check' methods.
The check

    dart.check(x, core.String);

becomes

    core.String._check(x);

which is more concise and allows the test to be specialized.

In one scrolling action, 224ms in dart.as and dart.check is replaced by 89ms of checks across the specializations.

R=vsm@google.com

Review URL: https://codereview.chromium.org/2012153002 .
2016-06-03 15:35:42 -07:00
Stephen Adams 6ab35de1cf Further bitop optimizations
- avoid unsigned coercion when result is compared with constant
- avoid unsigned coercion when result is shifted right unsigned
- avoid call when right shift result has bits affected by sign bit masked out
- use values of named constants

R=vsm@google.com

Review URL: https://codereview.chromium.org/1950583002 .
2016-06-03 14:29:07 -07:00
Jacob Richman fb20c9d6a4 Switch how we track whether trackDdcProfile is set to reduce the performance impact. sra was seeing this call hit 14% usage in the chrome profile.
Fill in whitelist call ist and add support for list of whitelists that apply to calls only.

BUG=
R=vsm@google.com

Review URL: https://codereview.chromium.org/2032903003 .
2016-06-02 16:59:33 -07:00
Jacob Richman 61a1d8c9c8 Fix a few cases were obj and name were used instead of $obj and $name. remove ProfileEntry class as sadly defining a class in operations.dart appears to have an ordering issue which causes two tests to fail.
Review URL: https://codereview.chromium.org/2035583004 .
2016-06-02 13:07:51 -07:00
Jacob Richman 314bd180a2 Profile dynamic calls.
Debug logic

BUG=

patch from issue 2012423005 at patchset 1 (http://crrev.com/2012423005#ps1)

R=jacobr@google.com, leafp@google.com

Review URL: https://codereview.chromium.org/2024353002 .
2016-06-02 09:59:23 -07:00
Leaf Petersen 59abfdb121 Fix bot, law of the excluded middle still holds
TBR=jacobr@google.com

BUG=

Review URL: https://codereview.chromium.org/2037503002 .
2016-06-01 20:58:44 -07:00
Leaf Petersen de24eea382 Check for extension methods when using whitelist
BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2037473002 .
2016-06-01 20:45:21 -07:00