Commit graph

39794 commits

Author SHA1 Message Date
Ryan Macnak aa38062a23 Add WebSocket.addUtf8Text to allow sending pre-encoded text without a round-trip UTF-8 conversion.
Use it to implement the vm-service, where in particular we are concerned about the space overhead of the conversion leading to the process being killed on iOS.

Closes #27129

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

Review URL: https://codereview.chromium.org/2260073002 .
2016-08-24 16:15:07 -07:00
Carlo Bernaschina 97da42bd45 Fixed template in HeapSnapshotClassReferences implementation
Fixes=https://github.com/dart-lang/sdk/issues/27144

TBR=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2276203002 .
2016-08-24 15:57:22 -07:00
Harry Terkelsen 2b6a4b64d1 small tweaks to kernel test helper to work in checked mode
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2271143004 .
2016-08-24 15:42:57 -07:00
Harry Terkelsen 103707382f record originating elements for Kernel nodes
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2268893006 .
2016-08-24 15:00:09 -07:00
Sigmund Cherem 8445c85aa6 Add empty kernel-ssa test
R=het@google.com

Review URL: https://codereview.chromium.org/2275603004 .
2016-08-24 14:27:37 -07:00
Konstantin Shcheglov af6bd2ef88 Use SdkExtensionFinder in the old Analysis Server implementation.
To be replaced with ContextBuilder of course.
But we need this for the time being.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2272093003 .
2016-08-24 13:58:16 -07:00
Konstantin Shcheglov 2b087ee444 Remove SDK extension support from PubSummaryManager.
As we discussed, the Flutter SDK bundle contains everything - the
libraries from the Flutter embedder, and also the extension library.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2278603003 .
2016-08-24 13:51:13 -07:00
Harry Terkelsen 6df6a3b0ad skeleton Kernel -> SSA builder
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2274263002 .
2016-08-24 12:50:45 -07:00
Brian Wilkerson 40a310748a Correctly use sdk passed on command-line
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2276033003 .
2016-08-24 12:38:21 -07:00
John McCutchan d8eb5ffb57 Do not allow a hot reload if the isolate has a sticky error
BUG=
R=turnidge@google.com

Review URL: https://codereview.chromium.org/2278613002 .
2016-08-24 11:31:46 -07:00
Stephen Adams 4f0e85997e Dummy receiver optimization for super calls
R=sigmund@google.com

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

Implements: https://github.com/dart-lang/sdk/issues/22727
2016-08-24 10:48:40 -07:00
Stephen Adams f4107397ac Constant-fold HTypeInfoReadVariable of constant value
R=sigmund@google.com

Committed: 5dd24a28b9

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

Reverted:  5dd24a28b9
2016-08-24 10:39:18 -07:00
Florian Schneider 7d6f78b88f VM: More refactoring of recognized methods inlining.
Move inlining OneByteString._setAt, List constructor, Object constructor
and a few math function to the flow-graph inliner.

Enable inlining of trigonometric math functions in AOT that were previously not inlined.

BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2273943002 .
2016-08-24 10:35:05 -07:00
Zachary Anderson 57bff322cd Ignore non-UTF8 strings in the environment
R=asiva@google.com

Review URL: https://codereview.chromium.org/2273053002 .
2016-08-24 10:10:41 -07:00
Stephen Adams 953e7c82bc Revert "Constant-fold HTypeInfoReadVariable of constant value"
TBR=sigmund@google.com

Review URL: https://codereview.chromium.org/2276953002 .
2016-08-24 09:57:03 -07:00
Konstantin Shcheglov 2e24662c06 Use FlushTargetFilter to pre-filter targets before checking their results.
This helps to reduce number of checks, so makes flushing faster.
In non-incremental changes it gives 0.32% -> 0.11%.
In incremental changes it gives 10% -> 2.6%.

We still pass both target and result into the second filter for
convenience, e.g. to print them both without need to remember the
current target in a local variable.

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2267273004 .
2016-08-24 09:44:06 -07:00
Konstantin Shcheglov abc5051854 Remove 'Element.docRange'.
I also marked the corresponding information in summaries as @deprecated
and made a small tweak to the generator so that it knows that the ids
of deprecated fields are still used.

R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2270903002 .
2016-08-24 09:40:23 -07:00
Carlo Bernaschina 3d415d5ac0 Converted Observatory icdata-view element
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2271083002 .
2016-08-24 09:33:37 -07:00
Carlo Bernaschina b4cf35c759 Fixed cpu-profile-table data visualization
Fixes=https://github.com/dart-lang/sdk/issues/27116

R=johnmccutchan@google.com
TBR=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2271083003 .
2016-08-24 09:20:43 -07:00
Stephen Adams 5dd24a28b9 Constant-fold HTypeInfoReadVariable of constant value
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2263853002 .
2016-08-24 09:07:00 -07:00
Carlo Bernaschina 44d2b85d3d Converted Observatory cpu-profile-table element
Fixes=https://github.com/dart-lang/sdk/issues/27116

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2273993002 .
2016-08-24 08:51:37 -07:00
William Hesse fda21e2b9a Add relative path to test when creating generated multitest directory
BUG=https://github.com/dart-lang/sdk/issues/27139
R=kustermann@google.com

Review URL: https://codereview.chromium.org/2270413002 .
2016-08-24 14:16:22 +02:00
Florian Loitsch 1971d4c59d Fix DateTime.timeZoneName comment.
R=lrn@google.com

Review URL: https://codereview.chromium.org/2270043002 .
2016-08-24 12:49:17 +02:00
Lasse R.H. Nielsen 99439a336a See: https://docs.google.com/document/d/1iEuLbDMgbB657R5aFj9EfnT6B0obzQk93Of7CfWKc00/edit#heading=h.9ixvz54wwawi
Implement assert in initializer list in VM.

R=hausner@google.com

Review URL: https://codereview.chromium.org/2002923002 .
2016-08-24 12:43:26 +02:00
Carlo Bernaschina 3cea4fa2a5 Fixed crash during retainedTopList computation
Fixes=https://github.com/dart-lang/sdk/issues/27138

TBR=rmacnak@google.com

Review URL: https://codereview.chromium.org/2271653003 .
2016-08-23 19:24:39 -07:00
Ryan Macnak e40b4fd2c5 Update some switchable call stub names and comments.
R=fschneider@google.com

Review URL: https://codereview.chromium.org/2272793004 .
2016-08-23 17:27:57 -07:00
Carlo Bernaschina 416ffffab5 Added missing @bindable annotation in ObjectCommonElementWrapper
TBR=rmacnak@google.com

Review URL: https://codereview.chromium.org/2277493002 .
2016-08-23 15:14:24 -07:00
Konstantin Shcheglov 23bc00bfc6 Issue 27133. Reset AnalysisDriver when performing limited invalidation.
R=brianwilkerson@google.com
BUG=https://github.com/dart-lang/sdk/issues/27133

Review URL: https://codereview.chromium.org/2276733003 .
2016-08-23 15:00:38 -07:00
Konstantin Shcheglov b115309531 Flush AST results for source outside of the analysis roots.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2271803002 .
2016-08-23 14:53:51 -07:00
Carlo Bernaschina 98ca791ed9 Fixing contexts_tests service test in checked mode
TBR=rmacnak@google.com

Review URL: https://codereview.chromium.org/2269243002 .
2016-08-23 13:48:27 -07:00
Carlo Bernaschina fc6954171e Converted Observatory context-view element
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2270013002 .
2016-08-23 13:16:23 -07:00
Carlo Bernaschina 547d71add7 Converted Observatory heap-snapshot element
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2266343002 .
2016-08-23 12:55:43 -07:00
Stephen Adams 3cec399d2c Add test case for type with partial parameterization by method type parameter
BUG=
R=eernst@google.com

Review URL: https://codereview.chromium.org/2257813003 .
2016-08-23 10:45:22 -07:00
Ryan Macnak cdb7b03ee0 vm-service: Reduce copying involved in sending binary events (e.g., heap snapshot).
Issue #27092

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2273463002 .
2016-08-23 10:02:33 -07:00
Brian Wilkerson 3a6d80780b Add support for resolving symbolic links
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2270593003 .
2016-08-23 09:39:48 -07:00
Erik Ernst 9a1e050a85 Adjusts the spec to include access to initializing formals.
Adresses https://github.com/dart-lang/sdk/issues/26659.

R=lrn@google.com

Review URL: https://codereview.chromium.org/2190373002 .
2016-08-23 18:28:40 +02:00
Steven Sheffey 025b433c00 Updated directory_linux.cc to conform with the deprecation of readdir_r (#27093)
* Updated directory_linux.cc to conform with the deprecation of readdir_r

* Fixes to directory_linux.cc

* Modified error checking to more accurately represent the original code

* Removed redundant check and changed variable names for readability

* Changed variable name in DeleteRecursively for readability

* Modified loop for better error checking

* Simplified loop in DirectoryListingEntry::Next

* Fixed text on a comment

* Added summary of pull request and fixed code style

* Fixed commenting style

* Fixed a comment referencing readdir_r
2016-08-23 07:49:00 -07:00
Johnni Winther f49b7c2720 Support raw types in metadata.
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2254363003 .
2016-08-23 09:49:33 +02:00
Konstantin Shcheglov 90c7698f1b 'Extract Local' and 'Inline Local' refactoring need only single file analysis.
We still analyze more than we actually need - we don't need the full
RESOLVED_UNIT, we could live with some much lower RESOLVED_UNITx. But it
might be fast enough for practical purposes to compute fully resolved
units.

Maybe we should set up monitoring for refactoring times...

R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2262393003 .
2016-08-22 18:59:55 -07:00
Harry Terkelsen 7923d0cba9 try to build Kernel IR for SSA builder
BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2265413002 .
2016-08-22 18:40:44 -07:00
Stephen Adams 3c82f05ca6 Online 'SSA conversion' of mutable parameters.
The builder creates mutable parameters in functions containing
try-catch.  This change cleans this up in the usual case where the
parameter is not assigned.  The effect is improved SSA type
propagation.

R=sigmund@google.com

Review URL: https://codereview.chromium.org/1973213002 .
2016-08-22 17:29:12 -07:00
Sigmund Cherem 4bec345309 Fix redness in bot
TBR=het@google.com

Review URL: https://codereview.chromium.org/2267193002 .
2016-08-22 16:47:28 -07:00
Sigmund Cherem 57f26aeb60 Add skeleton of SSAKernel function compiler
R=het@google.com

Review URL: https://codereview.chromium.org/2269783002 .
2016-08-22 16:30:41 -07:00
Zachary Anderson b49de12f6c DBC: Fix more HTTP benchmark bailouts
HttpRequest(IOPerSecond) ~300 -> ~350

R=fschneider@google.com

Review URL: https://codereview.chromium.org/2270483002 .
2016-08-22 15:57:57 -07:00
Harry Terkelsen b86be4ea68 Copy Rasta visitor to dart2js.
This code is unused now, but will be used to create the SSA graph
from Kernel IR.

BUG=
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2265383002 .
2016-08-22 15:31:48 -07:00
Sigmund Cherem 69c28ae15b Add flag to dart2js to configure whether to use the kernel lowering.
R=het@google.com

Review URL: https://codereview.chromium.org/2270473002 .
2016-08-22 15:30:11 -07:00
Florian Schneider 8eaa762d4a VM: Remove more duplicate code between AOT and JIT compiler.
BUG=
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2265873005 .
2016-08-22 15:20:54 -07:00
Sigmund Cherem b16d5ca237 Introduce "CommonElements"
Moves common elements that the compiler refers to into a standalone class "CommonElements". Along the way I:

  - made computation of these elements lazy: it's only done when needed. This meant also changing some checks of the form `x == someCommonElement` into `isSomeCommonElement(x)` so that we don't forcefully resolve elements if we haven't seen them.

  - I tried also to remove elements that were only used to know whether something happened. Instead we model that directly with a boolean.

Next steps after this:
 - move CommonElements under common/elements.dart
 - merge CoreClasses + CommonElements
 - introduce TargetElements: elements that the backend refers to that we need to know about during resolution/analysis. I expect most of it to be already in BackendHelpers.
 - get rid of onLibraryScanned/onLibrariesLoaded

R=het@google.com

Review URL: https://codereview.chromium.org/2265473004 .
2016-08-22 14:53:26 -07:00
Zachary Anderson ae3d47fdc4 DBC: Add back special case for float64 load/store
After my last change eliminating the special case, there was a
20% perf drop on FluidMotion.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2268593002 .
2016-08-22 14:39:27 -07:00
Zach Anderson e0f5ed22b9 Fix a couple socket tests for short read/write
It appears to be timing dependent whether a SocketException or
a HandshakeException is thrown in the presence of short reads
and writes for these secure socket tests that are meant to fail.

R=asiva@google.com

Review URL: https://codereview.chromium.org/2262043003 .
2016-08-22 13:45:10 -07:00