Commit graph

47021 commits

Author SHA1 Message Date
Ryan Macnak 03a2c24edf vm-service: Add optional 'scope' parameter to 'evaluate' and 'evaluateInFrame'.
Closes #29535

R=asiva@google.com

Review-Url: https://codereview.chromium.org/2872503004 .
2017-05-18 18:02:49 -07:00
Vijay Menon b82b0e29ed DDC fixes for SpeechRecognition
R=alanknight@google.com

Review-Url: https://codereview.chromium.org/2896463002 .
2017-05-18 17:05:51 -07:00
Sigmund Cherem ebfd044456 Remove async modifier from outlines
In the future we might want to re-add this, but for now, no one needs to know
that a function was async/async*/sync*. This also allows the async/await
transformer to ignore external references without any special logic.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2888823004 .
2017-05-18 15:20:20 -07:00
Régis Crelier dc1fd61f6d Fix fasta tests expectation after arguments descriptor change.
Review-Url: https://codereview.chromium.org/2890263002 .
2017-05-18 15:03:06 -07:00
Keerti Parthasarathy e185aa63b2 Update async package to include fix for Stream changes
R=vsm@google.com

Review-Url: https://codereview.chromium.org/2888933003 .
2017-05-18 14:35:19 -07:00
Stephen Adams 7983454299 js_runtime: loadDeferredLibrary: don't call initializer of repeated empty parts
Pre-filtering hunks to initialized ended up calling some initializations multiple times. This happened for empty parts, so was harmless after 4af03b1a65

Simplify logic to reduce use of corelib functions. There is no real need to be creating closures and calling all of List.generate, where, and map.

BUG=
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2893653005 .
2017-05-18 14:16:41 -07:00
Régis Crelier 9aafded095 Pass type argument vector to generic functions (if --reify-generic-functions is
true, still false per default).
Work in progress, not functional yet (passed vector is still ignored in callee).

R=vegorov@google.com, zra@google.com

Review-Url: https://codereview.chromium.org/2859673002 .
2017-05-18 14:03:47 -07:00
Vijay Menon 59e6c332ea Regenerate DDC artifacts
TBR=rnystrom@google.com

Review-Url: https://codereview.chromium.org/2886403006 .
2017-05-18 13:29:26 -07:00
Bob Nystrom 92267afc66 Refactor and clean up the status file parsing code. - Make the parser less error tolerant. The expression parser used to ignore any unrecognized tokens, which means a status like "RuntimeError CompileError" (not the missing comma) was parsed as simply "RuntimeError", which seems bad. Now it reports an error. Fixed a couple of status files that thought they were setting statuses that they weren't (!).
- Separate out parsing a status file from applying the environment to
  determine which sections are active. This makes it possible to, for
  example, generate expectation sets for multiple environments without
  having to reparse each time.

- Simplify expression parsing. Remove set expressions since they weren't
  used for anything useful. A test's expectations are a simple
  comma-separated list and don't need anything beyond that. Merge
  Scanner and Tokenizer since the latter was a glorified function.

- Make more names private so that it's clearer what's used outside of
  various libraries.

- Generally modernize the style.

- Add *lots* of documentation.

Again, there should be no behavioral changes. I ran:

  ./tools/test.py -m release,debug -c none,dart2js,dart2analyzer -r none,vm,d8 corelib

Before and after the change and verified that the output was the same
(aside from timing).

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2891753003 .
2017-05-18 12:42:52 -07:00
Jacob MacDonald fa834e7d39 update to latest pub
BUG=
R=kevmoo@google.com

Review-Url: https://codereview.chromium.org/2894663002 .
2017-05-18 12:24:12 -07:00
Brian Wilkerson 7e11a13cf5 Add requestTime to responses
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2890163004 .
2017-05-18 10:32:47 -07:00
Brian Wilkerson 5659afc812 Make instrumentation data structure more regular
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2890193002 .
2017-05-18 09:09:17 -07:00
Erik Ernst 9820535bc1 Announced #28939 (void f() => e allows an e of any type) in changelog
Addresses sdk issue #29646.

R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2887253003 .
2017-05-18 17:12:46 +02:00
Lasse Reichstein Holst Nielsen 25a770fc97 Fix Stream.distinct.
Due to incorrectly shared state, a broadcast distinct stream listened to
more than once would give incorrect results.
Also update docs.

Fixes #29638, #29627.
BUG= http://dartbug.com/29638, http://dartbug.com/29627
R=floitsch@google.com

Review-Url: https://codereview.chromium.org/2885993005 .
2017-05-18 16:53:23 +02:00
Brian Wilkerson 091752f158 Register files with new drivers (issue 29641)
Review-Url: https://codereview.chromium.org/2886343002 .
2017-05-18 07:43:47 -07:00
Zhivka Gucevska e68b664383 Add support for execution of constructor body
BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2880343002 .
2017-05-18 15:30:22 +02:00
Asger Feldthaus 876db33bf4 Add import/export declaration AST node boilerplate to kernel.
Previously only deferred imports were represented. They have been
merged with the general form.

BUG=
R=kmillikin@google.com

Review-Url: https://codereview.chromium.org/2852373002 .
2017-05-18 14:38:08 +02:00
Dmitry Stefantsov e5f93a068f Revert "More compact string representation on 64 bit."
This reverts commit 5c8e472c82.

TBR=erikcorry@google.com

Review-Url: https://codereview.chromium.org/2889723005 .
2017-05-18 14:23:12 +02:00
Zhivka Gucevska 4030e2de6c Modify new instance allocation
A fresh new instance should be allocated after the evaluation of the
argument list for the constructor.

This change modifies the ConstructorInvocation application continuation
to allocate a new object and introduces :
 * continuation applications for Redirecting and Super constructor
invocations, applied on evaluated arguments for Redirecting and Super
constructors respectively
 * expression continuation for instance initialization, applied to the
new instance

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2888913002 .
2017-05-18 12:31:20 +02:00
Erik Corry 5c8e472c82 More compact string representation on 64 bit.
This moves the hash code into the header word for strings on 64 bit
platforms.  With the old layout, 9 character strings became 48-byte
objects.  With the new layout you have to go to 17 characters before
you are bumped from 4 to 6 words (32 to 48 bytes).

As a side effect, the class ID field is now 16 bits on all platforms
instead of having two different sizes, and the size field is 8 bits
on all platforms.

This also paves the way for moving the hash code for instance objects
into the header, so we won't need the side-lookup in the
hash-table-of-hash-codes on 64 bit platforms.

R=vegorov@google.com
BUG=

Review-Url: https://codereview.chromium.org/2893553002 .
2017-05-18 11:54:40 +02:00
Johnni Winther 3ba3cc1e0d Support mixins when loading from .dill
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2884273002 .
2017-05-18 11:04:12 +02:00
Dmitry Stefantsov 60be18b4a9 Add tool to extract LaTeX-formatted text from comments in Dart programs
R=zhivkag@google.com

Review-Url: https://codereview.chromium.org/2889953002 .
2017-05-18 10:48:29 +02:00
William Hesse 530a0df8f3 Revert "Use Kernel frontend from run_vm_tests."
This reverts commit d91f228766.
The commit causes a failure in
tools/build/mac/verify_order _ChromeMain "${BUILT_PRODUCTS_DIR}/${EXECUTABLE_PATH}":
unordered symbols in out/Release/Chromium Framework.framework/Versions/A/Chromium Framework:

BUG=
R=dmitryas@google.com

Review-Url: https://codereview.chromium.org/2884383005 .
2017-05-18 10:41:45 +02:00
Johnni Winther b30ff8ed66 Use entities in runtime_types
- and make it its own library.

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2884233002 .
2017-05-18 10:09:40 +02:00
Alexander Aprelev d91f228766 Use Kernel frontend from run_vm_tests.
With this change one can run run_vm_tests and pass to it reference to kernel parser snapshot. For example,

out/DebugX64/run_vm_tests --dfe=out/DebugX64/gen/kernel-service.dart.snapshot Debugger_RemoveBreakpoint

As this represents first step, this change enables only tests in debugger_test.cc to run with kernel frontend. There will be follow-up cls that enable all of the VM tests to use kernel frontend.

BUG=https://github.com/dart-lang/sdk/issues/28264
R=asiva@google.com

Review-Url: https://codereview.chromium.org/2881953002 .
2017-05-17 21:25:56 -07:00
Konstantin Shcheglov 510ce4d738 Mix salt into result signatures.
R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2893453005 .
2017-05-17 21:00:07 -07:00
Paul Berry 8c04f1a7f9 Revert "Flatten futures when inferring the type of an async function expression."
This reverts commit a0d98fe474.

This should address failures in the buildbot "vm-kernel-linux-release-x64-be".

TBR=scheglov@google.com

Review-Url: https://codereview.chromium.org/2893813002 .
2017-05-17 20:24:37 -07:00
Stephen Adams 4af03b1a65 dart2js: --fast-startup: updateHolders always copies properties
The 'trick' of splicing __proto__ builds long prototype chains, so don't do it.

R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2890873002 .
2017-05-17 17:45:46 -07:00
Konstantin Shcheglov 7bc9df585e Move writeOutline() and writeProgram() out of KernelTarget.
R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2885233003 .
2017-05-17 17:33:46 -07:00
Paul Berry a0d98fe474 Flatten futures when inferring the type of an async function expression.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2890083002 .
2017-05-17 14:56:03 -07:00
Paul Berry 8ea1906e54 Handle diagnostic messages from analyzer that lack a URI.
R=sigmund@google.com

Review-Url: https://codereview.chromium.org/2886193003 .
2017-05-17 14:17:49 -07:00
Paul Berry caa67f9895 Rework TypeInferenceListener.
Parameters are added which point to the expressions being
inferred--this should help with debugging.  Also, printing debug
statements is now enabled by uncommenting a single "with" clause
rather than uncommenting two different print statements.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2888733005 .
2017-05-17 14:16:06 -07:00
Paul Berry f47347d967 Remove the closures used by TypeInferrerImpl.inferInvocation.
It's cleaner to just pass in the Arguments object directly.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2894453002 .
2017-05-17 14:08:39 -07:00
Paul Berry 6866291fb3 Fix declaration of GenericTypeAliasElementForLink.
This class needs to implement FunctionTypeAliasElementForLink so that
it can be stored in CompilationUnitElementForLink._functionTypeAliases
(and returned by CompilationUnitElementForLink.functionTypeAliases)
without incurring checked mode errors.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2888653005 .
2017-05-17 14:03:46 -07:00
Konstantin Shcheglov bff1e003a8 Move the 'verify' flag to buildProgram().
Also make 'errors' typed.

R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2887163003 .
2017-05-17 13:57:44 -07:00
Bob Nystrom c269ef53a5 Revert "Re-apply status file parser changes from 0b7728da1bef08c1c1e092005d9fd8c8bff5fa6c."
This reverts commit a881aed354.

TBR.

R=paulberry@google.com

Review-Url: https://codereview.chromium.org/2888213002 .
2017-05-17 13:45:40 -07:00
P.Y. Laligand f3f599bcb5 Don't remove destination files in dry run mode. (#29633) 2017-05-17 13:18:49 -07:00
Bob Nystrom a881aed354 Re-apply status file parser changes from 0b7728da1b.
R=whesse@google.com

Review-Url: https://codereview.chromium.org/2880203004 .
2017-05-17 13:04:35 -07:00
Konstantin Shcheglov be1f538bf0 Remove 'dumpIr' from writeProgram() and KernelTarget.
Debug output should be done where clients need it, not in shared code.

R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2886233002 .
2017-05-17 12:06:03 -07:00
Konstantin Shcheglov abc656f3c3 Fix for resolving 'bar.dart' against 'dart:foo'. Test for TranslateUri.
This allows us to compile more libraries, although we still cannot
compile pkg/analyzer. We use too much memory, and there might be another
bug - it got into infinite loop.

R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2890883002 .
2017-05-17 11:33:55 -07:00
Konstantin Shcheglov 06e9b4b503 Rename buildOutline() and separate 'build' and 'writeProgram()'.
Also rename KernelTarget.program to _program to prevent clients from
reaching into internals. I think eventually we want to make more
stuff private. And rationalize errors handling. And... many things :-)

R=ahe@google.com, paulberry@google.com, sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2893563003 .
2017-05-17 11:10:06 -07:00
pq ba1a6e39f3 Update to fresh cli_util (0.1.0).
BUG=
R=devoncarew@google.com

Review-Url: https://codereview.chromium.org/2894433002 .
2017-05-17 11:04:29 -07:00
Sigmund Cherem cd2ebf70a2 Add dart:html and friends to patched_dart2js_sdk/platform.dill, also fix up
warnings on these libraries.

R=sra@google.com

Review-Url: https://codereview.chromium.org/2885103005 .
2017-05-17 10:58:30 -07:00
Paul Berry 28ed82075e Fix a type inference corner case: return expression where void expected.
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2888073003 .
2017-05-17 10:01:18 -07:00
Paul Berry 58566c5488 Perform type inference directly within kernel shadow infer() methods.
Previously we deferred to methods in the TypeInferrerImpl object, on
the theory that we would want to share this code with analyzer AST
type inference.  But we are no longer planning to do that, so the
indirection is just cumbersome.

R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2890803002 .
2017-05-17 08:38:09 -07:00
Konstantin Shcheglov ae10e16d71 Fixes for review comments.
R=sigmund@google.com
BUG=

Review-Url: https://codereview.chromium.org/2889693004 .
2017-05-17 08:31:07 -07:00
Brian Wilkerson daffcecc11 Pass the sdk path to plugins
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2885993004 .
2017-05-17 08:19:49 -07:00
Brian Wilkerson 7d26ff6d4f Remove some more library directives
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2884233004 .
2017-05-17 08:02:08 -07:00
Brian Wilkerson d9f1c2620b Update the log viewer to understand the plugin entries
R=scheglov@google.com

Review-Url: https://codereview.chromium.org/2891743002 .
2017-05-17 07:51:42 -07:00
Florian Loitsch eba1a930d6 Give usage when there are no arguments to patch_sdk.
R=vegorov@google.com

Review-Url: https://codereview.chromium.org/2890463003 .
2017-05-17 14:49:14 +02:00