Commit graph

39154 commits

Author SHA1 Message Date
John McCutchan
ef71bc1834 Improve hot reload test mode
- [x] Start reloading even earlier.
- [x] Keep the value of FLAG_reload_every per-isolate (so spawned isolates reload eagerly too).
- [x] Adjust the reload every back off curve to be linear in the beginning.
- [x] Cap the reload every threshold at 1,000,000
- [x] Test status file updates.
- [x] Stop disabling the background compiler / OSR when running tests.
- [x] Skip multi tests with compilation errors when reloading.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2133823002 .
2016-07-11 12:29:13 -07:00
Konstantin Shcheglov
c9c018a91f When validating cache consistency, skip sources in content cache.
Actually we need to skip it when we are about to compare modification
times, not when we are going to compute them. There was the race
condition in a performance benchmark.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2134283002 .
2016-07-11 11:39:48 -07:00
Brian Wilkerson
cfb3f57a97 Initial memory use status page
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2140583003 .
2016-07-11 10:27:28 -07:00
Konstantin Shcheglov
d2d8dbff41 'Import library' fixes should use the same 'addLibraryImports' implementation as the fixes where importing is a side effect.
Preparation for https://github.com/dart-lang/sdk/issues/26764

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2138843002 .
2016-07-11 09:33:58 -07:00
Konstantin Shcheglov
0ba58ef1b6 Keep resolution results in more cases. Invalidate only errors.
1. Subclassing does not change resolution, so we need to invalidate
   only HINTS (for invalid @override) and VERIFY_ERRORS (for
   unimplemented or type-conflicting (from multiple supers) members).

2. OTOH instantiation of a class with a (members) delta does not change
   nor resolution, not the set of errors.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2138603002 .
2016-07-11 09:27:00 -07:00
Florian Schneider
f50a14c4a9 Remove remaining stub code for IC range profiling.
I forgot to remove this in my previous CL.

BUG=
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2140683002 .
2016-07-11 09:11:26 -07:00
Konstantin Shcheglov
98bb50599b Adding/removing 'abstract' keyword is not a class delta change.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2136853002 .
2016-07-11 09:09:35 -07:00
Zachary Anderson
726fd84ff4 DBC: Various instructions.
- LoadIndexed
- EqualityCompare
- RelationalOp

R=vegorov@google.com

Review URL: https://codereview.chromium.org/2113563002 .
2016-07-11 09:02:18 -07:00
Brian Wilkerson
2eae1b611c Handle SDK extensions in the SDK
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2133873003 .
2016-07-11 07:44:11 -07:00
Florian Schneider
ab4490e5bf VM: Remove collection of unused range feedback.
We can always put it back if the optimizer makes use of it.
It's a lot of extra code that is unused. Therefore, remove it for now.

BUG=
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2132933003 .
2016-07-11 06:46:50 -07:00
Florian Loitsch
badabcc53a Don't use => on void functions.
Fixes #26740
BUG= http://dartbug.com/26740
R=sra@google.com

Review URL: https://codereview.chromium.org/2118633002 .
2016-07-11 14:20:12 +02:00
Florian Loitsch
9413d62bf6 More documentation for zones.
R=lrn@google.com

Review URL: https://codereview.chromium.org/2082553003 .
2016-07-11 13:21:08 +02:00
William Hesse
373121fb71 Roll Webkit DEPS to fix layout test status
BUG=
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2134153002 .
2016-07-11 12:55:01 +02:00
William Hesse
31b32c7838 Roll Webkit DEPS to pickup layout status change
This also picks up a fix to devtools showing dart files twice.

R=johnniwinther@google.com
BUG=

Review URL: https://codereview.chromium.org/2135943002 .
2016-07-11 11:47:58 +02:00
Ryan Macnak
ab14b12962 Restore writing ObjectPool immediates as intptr_t.
Fixes 64-bit AOT and caching-JIT snapshots. Corrects over-zealous conversion of snapshot intptr_t fields to int32_t. Any snapshot containing an ObjectPool is already architecture-specific and so word-size specific.

TBR=asiva@google.com

Review URL: https://codereview.chromium.org/2135033002 .
2016-07-09 18:23:20 -07:00
Stephen Adams
093604ce51 Revert "Type test tests for js interop"
Need suppress or to investigate alternative to script injection for cps mode

BUG=

Review URL: https://codereview.chromium.org/2134973002 .
2016-07-08 20:21:47 -07:00
Stephen Adams
081eec517b Type test tests for js interop
R=jacobr@google.com
TBR=jacobr@google.com

Review URL: https://codereview.chromium.org/2133563002 .
2016-07-08 18:52:26 -07:00
Florian Schneider
01c7df40b6 Don't load arguments descriptor for optimized static calls.
For static function invocations that don't have optional arguments we
can load smi zero instead of the arguments descriptor. Code is slightly
smaller, and it avoids loading from the object pool.

BUG=#25991
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2129043004 .
2016-07-08 16:49:19 -07:00
Lars Bak
bc6358e5ef Sped up hashCode by removing megamorphic call to _identityHashCode.
Microbenchmark measuring megamorhic hashCode access shows 25% speedup.

BUG=
R=asiva@google.com

Review URL: https://codereview.chromium.org/2137673002 .
2016-07-08 15:19:55 -07:00
Konstantin Shcheglov
971f12c153 Flush InterfaceTypeImpl cached memebers when ClassElement.version is different.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2136703002 .
2016-07-08 15:02:55 -07:00
Konstantin Shcheglov
ed887c09d1 Validate cache consistency asynchronously. Compute modification times of physical files in a separate isolate.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2132073003 .
2016-07-08 15:01:05 -07:00
Harry Terkelsen
f7878a179d fix handling of malformed typedefs
BUG=

Review URL: https://codereview.chromium.org/2136663002 .
2016-07-08 14:52:23 -07:00
Siva Annamalai
2ababdc976 Enable function level linking in product mode for windows so that dead code is eliminated and there are no references to code which is not in product mode.
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2134883002 .
2016-07-08 14:32:24 -07:00
Ryan Macnak
d75699e863 Make core snapshots word-size portable again.
Flutter creates a single core snapshot (from x64) that is used by both sky_snapshot (x64) and the engine (arm).

R=asiva@google.com

Review URL: https://codereview.chromium.org/2132833002 .
2016-07-08 14:18:44 -07:00
William Hesse
504f94e579 Update test and scheduled_test in DEPS
BUG=
R=nweiz@google.com

Review URL: https://codereview.chromium.org/2129143003 .
2016-07-08 22:06:09 +02:00
Konstantin Shcheglov
fbb6f4b914 Add package:isolate to DEPS.
R=pquitslund@google.com, brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2127423004 .
2016-07-08 13:02:22 -07:00
William Hesse
0b6cd6e26d Update status for jsinterop test that fails on csp
TBR=johnniwinther@google.com
R=johnniwinther@google.com
BUG=

Review URL: https://codereview.chromium.org/2131763003 .
2016-07-08 21:57:30 +02:00
pq
04bd632b23 Options validation cleanup.
Removed deprecated `enableConditionalDirectives` in favor of `enableTrailingCommas` (temporary as it may be).

BUG=
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2129033003 .
2016-07-08 12:51:48 -07:00
Harry Terkelsen
44cd029db8 update status files now that trailing commas are implemented
BUG=

Review URL: https://codereview.chromium.org/2133243002 .
2016-07-08 10:42:41 -07:00
Florian Schneider
cbc1d9fc63 Don't print variable descriptors by default when printing disassembly.
Since variable descriptors are generated lazily, printing disassembly
could trigger re-parsing. This should not hurt in general, but running with
--disassemble should not invoke the parser just for printing -- hereby triggering GC or otherwise altering the execution in unexpected ways.

BUG=#26441
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2133443002 .
2016-07-08 10:12:24 -07:00
Konstantin Shcheglov
1ce4c29f51 Validate only private sources, display statistics.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2131303002 .
2016-07-08 10:07:04 -07:00
John McCutchan
4ef89ec4e9 Do not reload when we are evaluating a constants during compilation
- [x] Add a NoReloadScope to `Parser::RunStaticFieldInitializer`
- [x] Add a NoReloadScope to `Parser::EvaluateConstConstructorCall`
- [x] Add a NoReloadScope to `Parser::Interpolate`
- [x] Add a NoReloadScope to `Parser::EvaluateConstExpr`

Fixes #26837

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2135683002 .
2016-07-08 10:05:20 -07:00
Harry Terkelsen
10691da9f8 dart2js: allow trailing commas in parameter and argument lists
Fixes https://github.com/dart-lang/sdk/issues/26646

R=johnniwinther@google.com, lrn@google.com

Review URL: https://codereview.chromium.org/2068003002 .
2016-07-08 10:03:51 -07:00
William Hesse
c87a720c86 Update status for package_resource_test
BUG=https://github.com/dart-lang/sdk/issues/26842
R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2131263002 .
2016-07-08 17:38:29 +02:00
Florian Loitsch
9a851032c9 Copy Dart-configuration detection from dart script to pub.
Fixes #26621.
BUG= http://dartbug.com/26621
R=whesse@google.com

Review URL: https://codereview.chromium.org/2134733002 .
2016-07-08 16:23:10 +02:00
Johnni Winther
4764bbc66f Update status for package_resource_test.
Review URL: https://codereview.chromium.org/2130373002 .
2016-07-08 16:18:41 +02:00
John McCutchan
dc1b2bf580 Small tweaks to hot reload testing
- [x] Start reloading 5x sooner in test mode.
- [x] Skip mirrors tests for now.
- [x] Skip reloading tests that expect compile time errors.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2128923003 .
2016-07-08 06:51:21 -07:00
William Hesse
60db3bd080 Update task_dependency_graph after analyzer change
BUG=

Review URL: https://codereview.chromium.org/2136543002 .
2016-07-08 15:36:31 +02:00
danrubel
2eef7ea9be update analyzer co19 status file
now that trailing commas are allowed and enableTrailingCommas defaults true

TBR=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2134693003 .
2016-07-08 08:14:50 -04:00
Johnni Winther
6c2cb212d6 Remove analyzer warning from test.
Review URL: https://codereview.chromium.org/2132903003 .
2016-07-08 14:12:24 +02:00
Johnni Winther
a805066b34 Update test and status file for jsinterop test.
Test update to avoid analyzer warnings and unittest marked as slow

Review URL: https://codereview.chromium.org/2130333002 .
2016-07-08 13:55:41 +02:00
Erik Ernst
6942e0df63 Fixes bug in scoping for generic methods.
The updates to tests/language/generic_local_functions_test.dart use a
local function type argument in its return type, which had not been
tested and did not work.

After a bunch of attempts to change the order in which the resolution
is performed, it suddenly turned out that the offending statement
`visit(node.returnType)` in `ResolverVisitor.visitFunctionExpression`
might be redundant! (.. a subsequent re-resolution in
`ResolverVisitor.analyze` performs the same job, and uses the correct
scope).

So this CL simply removes that `visit..` statement, and the resulting
`dart2js` passes all tests.

Adresses issue https://github.com/dart-lang/sdk/issues/26805.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2128243002 .
2016-07-08 13:28:36 +02:00
Johnni Winther
f2d1dba0db Add type test for jsinterop types.
BUG=
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2124443002 .
2016-07-08 11:57:12 +02:00
Johnni Winther
ddf8a9ddd2 Serialize WarnOnUseElement
R=het@google.com

Review URL: https://codereview.chromium.org/2125793003 .
2016-07-08 11:22:07 +02:00
Johnni Winther
1f1e00f012 Handle redirects to unresolved redirects
The solves the handling of redirecting factories that redirects to other
redirecting factories whos immediate redirection target is unresolved.

For instance

  class C {
    factory C.a() = C.b;
    factory C.b() = Unresolved;
  }

The implementation normalizes the properties 'immediateRedirectionTarget',
'redirectionDeferredPrefix', 'effectiveTarget', 'effectiveTargetType', and
'isEffectiveTargetMalformed' by always storing the information on the
implementation element.

R=het@google.com

Review URL: https://codereview.chromium.org/2125823002 .
2016-07-08 11:14:20 +02:00
Johnni Winther
41535b3b5b Serialize parameter nodes for local functions.
R=het@google.com

Review URL: https://codereview.chromium.org/2125643002 .
2016-07-08 10:57:10 +02:00
Johnni Winther
4a7b1bb57e Support enclosingClass on deserialized local elements
R=het@google.com

Review URL: https://codereview.chromium.org/2124773002 .
2016-07-08 10:47:33 +02:00
Johnni Winther
5f243e6bd0 Update tests to make latent errors explicit.
R=het@google.com

Review URL: https://codereview.chromium.org/2121143002 .
2016-07-08 10:41:23 +02:00
Johnni Winther
185d4d5900 Fix serialization of IndexSetIfNullStructure.
R=het@google.com

Review URL: https://codereview.chromium.org/2103833002 .
2016-07-08 10:21:11 +02:00
Johnni Winther
3fcadea405 Compute correct names for closures in operator methods.
Operators were not correctly recognized because of the use of identical
instead of == and thus closures contained untransformed operators in
their names.

R=het@google.com

Review URL: https://codereview.chromium.org/2119193002 .
2016-07-08 10:10:31 +02:00