Commit graph

42235 commits

Author SHA1 Message Date
Martin Kustermann a8f87725eb VM: [Kernel] Ensure we have the correct try-index when translating finally blocks
BUG=https://github.com/dart-lang/kernel_sdk/issues/25
R=kmillikin@google.com, vegorov@google.com

Review URL: https://codereview.chromium.org/2487183002 .
2016-11-11 20:38:47 +01:00
Regis Crelier 3bf6796440 Clean up encoding of size and single entry flag in Instructions.
R=vegorov@google.com

Review URL: https://codereview.chromium.org/2490363002 .
2016-11-11 11:09:37 -08:00
Paul Berry 61ab47bcef Fix windows bot failure in physical_file_system_test.dart.
R=sigmund@google.com

Review URL: https://codereview.chromium.org/2498613002 .
2016-11-11 10:25:25 -08:00
Brian Wilkerson f8aebca4c9 Validate that the expressions in an assert in the initializer list of a const constructor are all potentially const expressions
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2483213010 .
2016-11-11 09:31:33 -08:00
Zachary Anderson b5b563c52b Make gn_run_binary.py do the right thing for compiled_action
R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2494853002 .
2016-11-11 08:29:51 -08:00
Konstantin Shcheglov b48be29af8 Add MemoryByteStore and use it in tests.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2500533002 .
2016-11-11 08:21:56 -08:00
Lasse R.H. Nielsen c3bb3ddb41 Make Stopwatch logic simpler.
The `Stopwatch` class had more states than necessary because it started with
the `_start` and `_stop` fields being `null`, a state that couldn't happen later,
and it had to handle those cases specially.
Now just starts in a state equivalent to a stopped, reset timer.
Also use ?? and ??= because they are there,and don't call the overridable `isRunning` from other methods.

R=floitsch@google.com

Review URL: https://codereview.chromium.org/2485063003 .
2016-11-11 10:01:25 +01:00
Stephen Adams 8ccd41c2ae Avoid using constructor.name on ff & safari
TBR=jacobr@google.com

Review URL: https://codereview.chromium.org/2492163002 .
2016-11-10 21:26:23 -08:00
Bob Nystrom f2c5a3c402 Don't hardcode "dart" executable name.
BUG=
R=whesse@google.com

Review URL: https://codereview.chromium.org/2488363002 .
2016-11-10 16:51:55 -08:00
Bob Nystrom 4de1cb320b Bring in the latest dart_style to the SDK.
This pulls in the latest commit off GitHub to get the bots passing
again since analyzer has a breaking change in the SDK that hasn't
been released yet.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2499473002 .
2016-11-10 16:51:36 -08:00
Siva Annamalai 84ad096687 - Turn on canonicalization verification after a reload in debug mode.
- Rehash the canonical constants table for all new classes, this fixes
  numerous issues found with the canonical verification
  also fixes https://github.com/dart-lang/sdk/issues/26868
- Added issue https://github.com/dart-lang/sdk/issues/27803 and
  https://github.com/dart-lang/sdk/issues/27802 for remaining bugs.

BUG=#26868
R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2490233004 .
2016-11-10 16:13:33 -08:00
James Robinson e18404fd3b Revert "[gn] Consolidate exec_script calls to speed up generation"
Appears to break builds with errors like:

ninja -C xcodebuild/ProductX64 runtime
ninja: Entering directory `xcodebuild/ProductX64'
ninja: error: '../../runtime/vm/async_patch.dart', needed by 'obj/runtime/vm/concatenate_async_patch.inputdeps.stamp', missing and no known rule to make it
BUILD FAILED
step returned non-zero exit code: 1
@@@STEP_FAILURE@@@

This reverts commit ad86d6ed26.

BUG=

Review URL: https://codereview.chromium.org/2492053002 .
2016-11-10 15:17:38 -08:00
James Robinson ad86d6ed26 [gn] Consolidate exec_script calls to speed up generation
Calling out to python from GN to process gypi files is relatively
expensive with a 20-45ms fixed overhead for setup/teardown regardless
of what the script does. This makes runtime/vm/BUILD.gn take 1-1.5s
(per toolchain) to run as the template for libraries expands
out to 25 calls to gypi_to_gn.py, even though the actual time spent
processing the gypi files is negligible.

This replaces those repeated calls to gypi_to_gn.py with a call to a
custom script that process all of the gypi files needed for runtime/vm
and places the results into a single scope which can then be read from
in the template and replaces a few other scattered calls to
gypi_to_gn.py with a smaller number of calls that process multiple
gypi files and place the results into a single scope.

The end result is processing all of dart's GN files in a fuchsia build
takes ~250ms instead of >3 seconds.

R=zra@google.com

Review URL: https://codereview.chromium.org/2472813002 .
2016-11-10 15:10:45 -08:00
Stephen Adams f734606d0e Add native_testing library to mock @Native classes
Convert 114 tests to use native_testing.dart library.

Includes reviewed code from
https://codereview.chromium.org/2332953002/

Committed: ddfc70f164

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

Reverted:  74deaad759
2016-11-10 14:16:08 -08:00
Konstantin Shcheglov 891e709c5f Add File.lengthSync to use it for FileByteStore eviction.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2490023003 .
2016-11-10 13:31:06 -08:00
Konstantin Shcheglov d0ee9613d4 Fix disposing context with the new driver.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2489523008 .
2016-11-10 13:13:06 -08:00
Zachary Anderson f6de158e15 Quick fix to gn_run_binary.py to fix Fuchsia build.
Review URL: https://codereview.chromium.org/2496673002 .
2016-11-10 13:10:03 -08:00
Konstantin Shcheglov 1ac36f7c38 Rename setters synthetic/static to isSynthetic/isStatic.
Also rename ConstructorElementImpl.const2 to isConst.

These are breaking changes.

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

Review URL: https://codereview.chromium.org/2489363002 .
2016-11-10 12:22:58 -08:00
Konstantin Shcheglov 5694cca15e Don't add imports/exports elements for invalid URIs, with null Source.
Unfortunately I have to roll back the optimization.
We need to know whether the URI is valid earlier.

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

Review URL: https://codereview.chromium.org/2489383002 .
2016-11-10 11:49:10 -08:00
Zachary Anderson 90d3962ca3 Don't depend on dart_bootstrap if there is a usable prebuilt sdk
Also replace invoke_dart() with compiled_action(), and some other
cleanups.

fixes #27781

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2493833002 .
2016-11-10 11:16:24 -08:00
Ryan Macnak e3f791b00e Fix ARM and MIPS builds for gcc 4.9.2.
R=zra@google.com

Review URL: https://codereview.chromium.org/2489953003 .
2016-11-10 11:13:13 -08:00
Bob Nystrom 1383286a35 Here's a first draft of a bot script for running the DDC tests.
As you can see, it requires "npm" to already be installed. Travis, I
think already has that on images. How should we handle this on the
Chrome bots?

What else did I do here that's wrong?

R=whesse@google.com

Review URL: https://codereview.chromium.org/2490013003 .
2016-11-10 10:40:59 -08:00
Regis Crelier e0b7792668 Re-enable assert to check canonicalization of signature type after snapshot
generation.
See issue #27606 for details, and reopen if assert triggers.

R=rmacnak@google.com

Review URL: https://codereview.chromium.org/2491753003 .
2016-11-10 10:12:29 -08:00
Konstantin Shcheglov d3b5ed9808 Support 'edit.organizeDirectives' with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2491953002 .
2016-11-10 09:52:40 -08:00
Brian Wilkerson c7eab6ba06 Enhance generalizing visitor to allow visiting an invocation expression
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2490703004 .
2016-11-10 09:50:46 -08:00
Brian Wilkerson 375f06d6dc Fix breakage (TBR)
Review URL: https://codereview.chromium.org/2491703005 .
2016-11-10 09:21:33 -08:00
Konstantin Shcheglov 7eedacf190 Fix and test for MemoryCachingByteStore.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2493793002 .
2016-11-10 09:14:09 -08:00
Brian Wilkerson 3c437f5d9e Create AST structure for asserts in constructor initializers
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2492633002 .
2016-11-10 09:00:18 -08:00
Konstantin Shcheglov c50b82abcc Rename setters VariableElementImpl.[const3, final2] to isConst and isFinal.
This is a breaking change.

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

Review URL: https://codereview.chromium.org/2491173002 .
2016-11-10 08:46:31 -08:00
Konstantin Shcheglov 18b34d0d22 Add AnalysisDriverScheduler.status and extract status support.
Also use this 'status' stream to send analysis notification from DAS.

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

Review URL: https://codereview.chromium.org/2491183002 .
2016-11-10 08:15:31 -08:00
Konstantin Shcheglov 617e1b88ca Support for AnalysisService.OVERRIDES with the new analysis driver.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2491843002 .
2016-11-10 06:50:26 -08:00
William Hesse 63b1016e90 Revert "Status and DEPS files updated (#27792)"
This reverts commit be4426a9c1.
This roll of co19 tests to the latest version is tested on the
buildbots, and then reverted so any necessary status updates can
be worked on offline.

BUG=
TBR=sortie@google.com

Review URL: https://codereview.chromium.org/2488253002 .
2016-11-10 11:39:42 +01:00
Sergey G. Grekhov be4426a9c1 Status and DEPS files updated (#27792)
* Analyzer and VM status files are updated according last versions of co19 and sdk

* dart2js status file updated according the last tests run on Chrome and FF

* dart2js status file updated according the last tests run on FF

* Status files updated according latest Dartium run

* status file updated according Linux run

* DEPS and VM status files updated

* dart2js files updated for FF and Chrome on Linux

* Status files updated according the latest Chrome run
2016-11-10 11:30:53 +01:00
Paul Berry 981e2660bf Remove deprecated members from ErrorCode.
These existed as an effort to avoid causing breaking changes in the
analyzer package, but it turns out that the analyzer package already has
breaking changes in progress, so there is no benefit.

R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2491593003 .
2016-11-09 18:11:42 -08:00
Vijay Menon bc980498a1 Fix ddc whitelist op
R=jacobr@google.com

Review URL: https://codereview.chromium.org/2492523004 .
2016-11-09 15:23:04 -08:00
Konstantin Shcheglov 355a5f9664 Set initializer expressions for default values of parameters of local functions.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2489133002 .
2016-11-09 15:01:32 -08:00
Zachary Anderson c4e1b1c641 GN: Don't strip binary with clang on x64
Review URL: https://codereview.chromium.org/2494563002 .
2016-11-09 15:00:44 -08:00
Brian Wilkerson 37890f995f Add a new annotation
R=pquitslund@google.com

Review URL: https://codereview.chromium.org/2420653002 .
2016-11-09 14:19:27 -08:00
Zachary Anderson da81562dc8 Fix mac build
Review URL: https://codereview.chromium.org/2490003002 .
2016-11-09 12:51:21 -08:00
Zachary Anderson 630d24bec8 clang-formats remaining files and adds a presubmit check.
R=asiva@google.com, johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2483363002 .
2016-11-09 12:43:57 -08:00
Konstantin Shcheglov 050e16d221 Evict using size in bytes in MemoryCachingByteStore.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2487313002 .
2016-11-09 12:22:32 -08:00
Konstantin Shcheglov b6c02291b8 Notify all drivers about all changed files.
R=brianwilkerson@google.com
BUG=

Review URL: https://codereview.chromium.org/2489063002 .
2016-11-09 11:32:02 -08:00
Regis Crelier 80f289e54d Remove getter p on double in the VM to control fractional precision.
R=asiva@google.com

Review URL: https://codereview.chromium.org/2489713002 .
2016-11-09 10:56:55 -08:00
Konstantin Shcheglov 221ff0beae Don't ovewrite method types of a resynthesized library in TypeResolverVisitor.
R=brianwilkerson@google.com, paulberry@google.com
BUG=

Review URL: https://codereview.chromium.org/2491533002 .
2016-11-09 10:24:00 -08:00
Zach Anderson eba3743adb Adjust line endings setting in .gitattributes
When checking out code on Windows, we have git set up to automagically
convert LF line-endings to CRLF line-endings. This confuses the canned
formatting presubmit check, which fails because the line endings are not
what it wants.

This CL turns off the automagic line-ending conversion for C/C++ source
files, so that clang-format doesn't get confused by them on Windows.

R=johnmccutchan@google.com

Review URL: https://codereview.chromium.org/2490993002 .
2016-11-09 09:23:21 -08:00
Paul Berry 1dfa5685ce Update cross-context options encoding to account for patchPlatform.
R=brianwilkerson@google.com

Review URL: https://codereview.chromium.org/2486973004 .
2016-11-09 09:12:09 -08:00
Brian Wilkerson 6ce2f220e3 Add an error when a type parameter from a generic function is used in an is test
R=scheglov@google.com

Review URL: https://codereview.chromium.org/2479293004 .
2016-11-09 07:47:54 -08:00
Vyacheslav Egorov 6dce6e87f8 Reduce amount of boilerplate associated with bootstrap libraries.
R=fschneider@google.com
BUG=

Review URL: https://codereview.chromium.org/2493473002 .
2016-11-09 16:38:50 +01:00
Sigmund Cherem 053fa1c500 dart2js: move type-mask intermediate data from tree-elements into the global
inference engine.

R=johnniwinther@google.com

Review URL: https://codereview.chromium.org/2468303003 .
2016-11-09 07:26:13 -08:00
Johnni Winther 26f61fe1d4 Change IR encoding of redirecting factory invocations.
- redirecting factory constructors are not included in the program
- invocations of redirecting factory constructor point to the effective target

R=het@google.com

Review URL: https://codereview.chromium.org/2486703002 .
2016-11-09 16:22:27 +01:00