Commit Graph

4835 Commits

Author SHA1 Message Date
Stephen Adams cf1681e11e [dart2js] Remove more unused old rti helpers
Change-Id: Icbc50554f2b3ae2cb74b32c9876c7c0cdf15c75b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150640
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-15 18:23:17 +00:00
Stephen Adams 60ec2b31e6 [dart2js] More sharding of rti_need and rti_emission tests
Both are now sharded 4-ways, which should reduce the individual shards
to about 2 minutes.

Change-Id: I5e8a718a0b5c58b0850015bee76f10df26aee84d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151141
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
2020-06-15 16:32:25 +00:00
Dmitry Stefantsov 929d5e4a98 [cfe,ddc,dart2js,vm] Add FutureOrType
This CL is the sum of the following 5 CLs:
* https://dart-review.googlesource.com/c/sdk/+/149297/
* https://dart-review.googlesource.com/c/sdk/+/149299/
* https://dart-review.googlesource.com/c/sdk/+/149320/
* https://dart-review.googlesource.com/c/sdk/+/149321/
* https://dart-review.googlesource.com/c/sdk/+/149323/

The reason for landing the 5 CLs as one CL is to prevent potential
troubles with bisecting over the branch because the change is fully
functional only with all 5 CLs.

Closes #40123.

Bug: https://github.com/dart-lang/sdk/issues/40123
Change-Id: Ice52250a98acfe455b1d7fa5bb0624c115ca5dac
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150934
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Alexander Markov <alexmarkov@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-06-15 12:18:46 +00:00
Stephen Adams 84d3f3681f [dart2js] pass null for missing required argument in weak mode
Now passing:
language/nnbd/required_named_parameters/required_named_args_legacy_test
language/nnbd/required_named_parameters/required_named_args_weak_test

Change-Id: Ide909eb6eb996ca48c851b45f1069f6562b52d5e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151096
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-13 00:15:52 +00:00
Stephen Adams bbeda37c05 Address review comments from 150935
Change-Id: Ia137c8c139e13cb9b3f8017328f5a79edfcbc0b2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151022
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-12 05:54:28 +00:00
Stephen Adams a13a2d7c84 Redo "[dart2js] Delete unused old-rti helpers"
Change-Id: I756a1adde6bbecdb5f28eb93f93041463435476d
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/151041
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-12 01:29:39 +00:00
Johnni Winther ab034e69b4 [dart2js] Fix reduction to declared type in type promotion computation
When reducing the type promotion in case of assignment, the target
info wasn't correctly handling the reduction to the trivial state.
This caused an error in a following join computation.


Closes #42281

Change-Id: I2144f5401e9736308dc37147f7a5cb9ab1be8583
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150935
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2020-06-11 18:52:38 +00:00
Mayank Patke 9f6510b31b [dart2js] Replace accesses to options.nullSafetyMode with
`options.useLegacySubtyping` where possible.

Change-Id: I462044e536f061cc0c67b044b986494801f58e1b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150765
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-06-11 17:35:41 +00:00
Stephen Adams 96fc158e4e Revert "[dart2js] Delete unused old-rti helpers"
This reverts commit e75b824aed.

Reason for revert: Break in google3 

Original change's description:
> [dart2js] Delete unused old-rti helpers
> 
> Change-Id: I0f97dddbfcbe5f51dff1d7d68f880e85d62768a4
> Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150504
> Commit-Queue: Stephen Adams <sra@google.com>
> Reviewed-by: Sigmund Cherem <sigmund@google.com>

TBR=sra@google.com,sigmund@google.com,joshualitt@google.com

Change-Id: If71d84fda4ce596bb762d32454a4c635185f189f
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150780
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-10 17:46:40 +00:00
Michael Thomsen 41a7db13bc Avoid divisive terms
Based on guidance in https://developers.google.com/style/w

Related to https://github.com/dart-lang/sdk/issues/42247

Change-Id: If40c8e39bb35f1f7dfad9cb977c7a494a2cc3bd7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150626
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Michael Thomsen <mit@google.com>
2020-06-10 14:23:57 +00:00
Stephen Adams e75b824aed [dart2js] Delete unused old-rti helpers
Change-Id: I0f97dddbfcbe5f51dff1d7d68f880e85d62768a4
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150504
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-06-09 18:24:53 +00:00
Harry Terkelsen 54fe29e965 support @JS annotation from SDK
Attempt at fixing https://github.com/dart-lang/sdk/issues/39740 to allow the flutter web engine to use @JS
interop to avoid the overhead of the SDK available js interop.

Bug: 39740
Change-Id: I7ba9c8981e639cd267bee3086ba900b89bfc0d6f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150501
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Harry Terkelsen <het@google.com>
2020-06-09 17:10:15 +00:00
Stephen Adams e3fac1dde2 [dart2js] Remove Options.useNewRti
Change-Id: Ib959cddf7929e2e5d6f3e514e718976fd0135b7e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150473
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-09 17:01:55 +00:00
Joshua Litt f9f1ca6171 [dart2js] Create tests/dart2js for nnbd.
Change-Id: Ib8721cf976803d8d1b9d723b7e691e344c768b67
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149881
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Joshua Litt <joshualitt@google.com>
2020-06-09 16:53:15 +00:00
Stephen Adams 7eee7b6957 [dart2js] Remove old rti in ssa/
Remove HInstructions related to old rti.

Some methods are still called 'fooNewRti'. These will be renamed 'foo'
at the very end of removing old rti.

Change-Id: I36fcc9d2d5bc19988e26fa5014c895f54b88900c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150276
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-09 00:43:05 +00:00
Stephen Adams 89c5b5c904 [dart2js] Call-through stubs must forward type arguments
There are several problems contributing to issue 41449.
This fixes the malformed call-through stubs.

Change-Id: I90f1584f221956ee3fe4111314cba2813a16837c
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150283
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2020-06-08 18:40:53 +00:00
Stephen Adams 5f30b07f34 [dart2js] Remove trivial dead code in simplifier
The biggest impact is removing the orphaned HInterceptors for all the
call instructions lowered to other instructions. (The SSA is much
easier to read with this noise immediately removed!)

I have seen no code differences except one or two pieces of dead code
like `[];` that must have become dead on the last simplify pass after
the last DCE pass.

I am experimenting in another CL with some algebraic rewrites and
simplification of bit operations to target some weak code. This change
makes the rewrites work much better.

Change-Id: I057269d44abb44916255a48b36761bb719b73eaa
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150267
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-08 17:37:01 +00:00
Stephen Adams 4b9c2356e9 [dart2js] Don't confuse value and location.
A HParameterValue can be an SSA value or a mutable local variable
accessed via HLocalFet/HLocalSet. The latter happens in code that is not
completely SSA-converted (due to exception control flow).

The main bug is that the check on a mutable-variable-mode HParameterValue
should have been on a HLocalGet of the value, and not the HParameterValue
itself. This means that a reference to the HParameterValue cannot be
replaced with a strengthening check, as that breaks the invariant that
HLocalGet/Set refer to variables. There was code in types_propagation
that tried to work around this broken invariant.

The bug (issue 42189) required
  - An elided instance method parameter
  - try(-catch)(-finally) to avoid complete SSA-conversion
  - -O0 to avoid optimizing away the check early with inferred types

The first attempt at a fix was to not check the elided parameter at all
since the default value is statically checked. This is still worthwhile.

Bug: 42189
Change-Id: Idd5e2b1485eba4950a36d1e4ff57ebe35e4c98a0
Fixed: 42189
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/150171
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-06-07 00:11:11 +00:00
Joshua Litt 451694e855 [dart2js] Move dart2js_native to dart2js/native.
Change-Id: I2f879fe18376b8c1b82fc201d488425dc154d2b7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149341
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Joshua Litt <joshualitt@google.com>
2020-06-04 18:11:49 +00:00
Joshua Litt 05ca544f15 [dart2js] Move tests/compiler/dart2js_extra to tests/dart2js_2.
Change-Id: Iaa0ca2b4f2d1b15f79ddca37834d3ed2497bc068
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149242
Commit-Queue: Joshua Litt <joshualitt@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-06-03 15:15:30 +00:00
Michael Thomsen 873bd241dd Clarify terms for environment declerations
Fixes https://github.com/dart-lang/sdk/issues/42136

Change-Id: I53ab8d0608f0229a4e22d24e54f29a5ddf150766
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149595
Commit-Queue: Michael Thomsen <mit@google.com>
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
2020-06-03 13:37:19 +00:00
Johnni Winther 3a021a6545 [cfe] Remove EvaluationMode.legacy
This is no longer valid. Since the SDK is agnostic we should default to weak mode.

Change-Id: Ia9fbf911e7ebb595c93a71afe3bb8de7495cebba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149065
Reviewed-by: Jens Johansen <jensj@google.com>
2020-05-30 09:47:02 +00:00
Stephen Adams 63ade9680f [dart2js] tweak deferred load list printing
In non-minified output, some newlines in the map are helpful.

Change-Id: I36f0e0bbeebe40c685923fabd9abe439526c3f54
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149486
Reviewed-by: Stephen Adams <sra@google.com>
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-29 23:51:57 +00:00
Stephen Adams fd48e704cb [dart2js] SSA cleanup
- remove unused selector fields
- add types to some constructors

Change-Id: Ia42700feae376088003500fcc1666a8e0b3cf754
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149372
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-29 17:19:46 +00:00
Joshua Litt 107862e2bf [dart2js] Fix bug in modular_test_suite.
Change-Id: I37954e14e8b53e70e0cfc4c3bcfb216e9f4d482f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148000
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-28 21:30:36 +00:00
Joshua Litt 20faaa5d94 [dart2js] Move dart2js unit tests to pkg/compiler/test.
Change-Id: Ib18f554c1076f27a3f7c0df5a36410da41a1f467
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148784
Reviewed-by: Paul Berry <paulberry@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-28 18:51:11 +00:00
Mayank Patke bbb8923ebb [dart2js] Ensure all top/raw type predicates go through DartTypes.
Conceptually, this makes sense because a type is not intrinsically top
or bottom or raw, but only in the context of a type system. This also
makes these predicates much more maintainable and puts them in a form
identical to the one at the RTI level.

Change-Id: I83154a82cef6cbaa9c4d0f27cb95f01473c1e015
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149049
Commit-Queue: Mayank Patke <fishythefish@google.com>
Reviewed-by: Stephen Adams <sra@google.com>
2020-05-27 05:28:03 +00:00
Mayank Patke d1546cac87 [dart2js] Make diagnostic message arguments strongly typed.
We were passing arguments as just a `Map` and forcing the Message to
handle the String conversion, but the caller is much better equipped to
do it and prevents the dynamic typing.

Change-Id: Icc4ab91edf233b81a64aa3b03462b541349fa751
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/149048
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-27 05:28:03 +00:00
Mayank Patke 8d6a0541dd [dart2js] Always treat Never as a bottom type.
Previously, we were only treating it as a bottom type with strong NNBD,
but weak NNBD can still contain Never.

Change-Id: I88f1aac3d228918f82e7e75d01531df802613ddb
Bug: https://github.com/dart-lang/sdk/issues/41970
Fixes: https://github.com/dart-lang/sdk/issues/41970
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148940
Reviewed-by: Stephen Adams <sra@google.com>
2020-05-27 05:28:03 +00:00
Stephen Adams e007545c42 [dart2js] Add HFunctionReference
Defer representation of function reference until codegen pass.
Not using opaque HForeignCode allows GVN and dead code removal to work.

Change-Id: I481094acca49c8b47d4ed9813a5150cbc8c9e4ff
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145340
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Mayank Patke <fishythefish@google.com>
2020-05-26 22:17:42 +00:00
Mayank Patke 46dc9fb9a7 [dart2js] Set NNBD mode based on entry point.
Tested with https://github.com/dart-lang/null_safety_sample_package/.

Change-Id: Icecbee11da44eb9eb9cb3eb36f905f4a7126996b
Bug: https://github.com/dart-lang/sdk/issues/41208
Fixes: https://github.com/dart-lang/sdk/issues/41208
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148580
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-26 22:08:52 +00:00
Sigmund Cherem 15ee305516 [dart2js] treat native return types as nullable in weak mode.
This is a temporary workaround. The `dart:html` library contains type
annotations based on the chrome IDL, but it doesn't consider browser
compatibility or whether an API is only supported on some contexts.

We can revert this as soon as `dart:html` is sound again.

See https://github.com/dart-lang/sdk/issues/41960 for details.

Change-Id: Ia92e8821adc8e3fab8cd8e08327a282c133962ca
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148622
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2020-05-19 04:54:09 +00:00
Stephen Adams 2aa7674cb2 [dart2js] Collect lazy statics in collector
Use the collector to distribute lazy statics to OutputUnits.  This is
much faster than filtering the lazy statics for each OutputUnit.

Code emitter times (most of difference in 'build program')
CM: 94s --> 58s
CMSS: 209s --> 72s

Change-Id: Ib1b71290c71c62810d902e9be1c48ee9985273eb
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148620
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-19 04:06:59 +00:00
Joshua Litt 9eea15e50e [dart2js] Delete generate_kernel.
Change-Id: I2261944a1ef9292d64c6d3b927eb8b55f4b274ba
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148231
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Joshua Litt <joshualitt@google.com>
2020-05-19 00:11:09 +00:00
Stephen Adams 998a92d2cc Cleanup deferred_import.dart
Use Map/Set/List literals instead of 'new ...'.

Change-Id: I0f7b4bad4a1859e4f154cf2666465cbb3153867f
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148442
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-18 21:41:26 +00:00
Stephen Adams c1486bcb24 [dart2js] Reduce Lists in DeferredLoadTask
ImportSets do not need to store the list of members of the set as it
is available implicitly on the canonical construction path. All that
is required is a back-pointer to traverse the canonical path from the
end (i.e. ImportSet).

This reduces the memory required by DeferredLoadTask by O(N).

Change-Id: Id23ce91d4aa01a74cd0f9ff4246dc56b65db1bf9
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148184
Commit-Queue: Stephen Adams <sra@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-16 01:02:33 +00:00
Mayank Patke 22e5856ae5 [dart2js] Normalize the FlatTypeMask representation of Null.
Change-Id: I8362f9fd4373fc64d2125602d35e8f7612081a93
Fixes: https://github.com/dart-lang/sdk/issues/41867
Fixes: https://github.com/dart-lang/sdk/issues/41918
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148182
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-05-15 21:45:12 +00:00
Stephen Adams 516ad5ce1c [dart2js] Deferred loading - don't leak ImportSet(s)
Null-out DeferredLoadTask.importSets to free up all the ImportSets.

DeferredLoadTask
  -> ImportSetLattice
    -> ImportSet({})
      -> all other ImportSets via transitions.

Change-Id: I552b4a37396277b9a43a6a823622ec2d7a542848
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148226
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-15 18:11:12 +00:00
Dmitry Stefantsov e53e5f2475 [cfe] Separate nullability and declared nullability
For some types it makes sense to distinguish between nullability as a
property of including null and the declared nullability, such as for
type-parameter types and FutureOr types.  This CL introduces the
separation between the two concepts.  The plan is to use that when
implementing FutureOrType.

Bug: https://github.com/dart-lang/sdk/issues/40123
Change-Id: I90b45bea768e89c213d021d360a481d38377c682
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147903
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
2020-05-15 07:38:05 +00:00
Mayank Patke 8a64b1a867 [dart2js] Fix weak-mode constant folding of null is Object.
Change-Id: Ia19c830529bbd84ffaeffba0373ca16224b42eb2
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148202
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-05-15 06:03:27 +00:00
Mayank Patke 9b63a072f2 [dart2js] Change --(no-)null-safety to --(no-)sound-null-safety.
Change-Id: I18d9cb237ba1bafda1a0f3cdc64fe43c22889311
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148222
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-05-15 06:03:25 +00:00
Mayank Patke e16b45c550 [dart2js] Add --nnbd-strong SDK.
Change-Id: I31bfdfd3f2cfe04a940bc9374d88da53dbfc0090
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/148150
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Mayank Patke <fishythefish@google.com>
2020-05-15 00:37:45 +00:00
Stephen Adams 7bbdd79224 [dart2js] strong mode exception values are never null
- Fix unwrapException to ensure it never returns null.
- Wrap `null` (from JavaScript) if necessary.
- Move `saveStackTrace` to top-level function to avoid closure allocation
- Force inferrer type for unwrapException to non-null to avoid tests
  at 'on Object' clauses.

Change-Id: I6e2ae2722420f14f73e75c2f3d4bdb56544db66e
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147841
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-13 22:47:33 +00:00
Stephen Adams 03e504e5fa [dart2js] Specialize strong 'is Object'
- o is Object --> o != null.
- Avoid specializing 'is Object' to instanceof.

Change-Id: Id882666d547ee2e06c6b92dec5a8070302dd9415
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147686
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-12 18:05:04 +00:00
Stephen Adams 95780dcaf2 [dart2js] ignore --use-old-rti option
The flag won't work properly after unforking the NNBD work.

Once the unfork stablizes we can remove lots of code.

Change-Id: I52a1c49208ac2dd78a38af79cf5f803de5d02ed1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147000
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-11 16:56:37 +00:00
Sigmund Cherem fb11d6399c [dart2js] enable null-safety also when deserializating the global data
Change-Id: Ibf8adabaf2c681aab45b0306f1728f55a148cdb1
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/147344
Reviewed-by: Stephen Adams <sra@google.com>
Commit-Queue: Sigmund Cherem <sigmund@google.com>
2020-05-08 05:45:49 +00:00
Stephen Adams a85c8b7520 [dart2js] Handle BlockExpression with unreachable value
Bug: 41781

Change-Id: I2647bfededaa8449b1ccec6529b07a274d35cac8
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/146694
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Stephen Adams <sra@google.com>
2020-05-06 19:22:15 +00:00
Joshua Litt fb5ebf6a09 [dart2js] Fix and rebase impact test for nnbd.
Change-Id: I545f5df00c4e8c1ae6a60ec6a6c4458c5d53db78
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/146360
Reviewed-by: Mayank Patke <fishythefish@google.com>
Commit-Queue: Joshua Litt <joshualitt@google.com>
2020-05-04 22:05:37 +00:00
Johnni Winther a35a42e408 [dart2js] Support pseudo-conflicting supertypes
Closes #41576
Closes #41696

Change-Id: Ibb650c49ce8cf6b5a279d0c4790f976a54db0f40
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/145780
Reviewed-by: Joshua Litt <joshualitt@google.com>
Commit-Queue: Johnni Winther <johnniwinther@google.com>
2020-05-01 20:31:35 +00:00
Joshua Litt 364a2ac7d5 [dart2js] Fix cfe_annotations_test nnbd.
Change-Id: I00c32a74bd8995fe40b88f75c2a1431e04f927d7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/144993
Commit-Queue: Joshua Litt <joshualitt@google.com>
Reviewed-by: Sigmund Cherem <sigmund@google.com>
2020-05-01 20:07:44 +00:00