Commit Graph

5559 Commits

Author SHA1 Message Date
paulberry@google.com d0b87e247c Implement new "yield*" type checking rules in analyzer.
This updates analyzer to reflect the new static type checking rules
for yield each added in r43420.

R=brianwilkerson@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43446 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 23:13:09 +00:00
paulberry@google.com 2cd86b7e29 Add static type checking of "yield*" statements to analyzer.
This does not include the new static typing rules that were introduced
in revision 43420.  I will address those in a later CL.

R=brianwilkerson@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43424 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 20:32:14 +00:00
paulberry@google.com 5482dcb769 Mark known async test failures in analyzer status file.
These failures are happening because recent async/await improvements
were made only to the Dart-based analysis code, not the Java-based
analysis code.

TBR=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43397 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:18:43 +00:00
johnniwinther@google.com 801c4e5735 More status updates.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43394 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 13:40:24 +00:00
johnniwinther@google.com 1b2cf4e51b Fix dartium status, 2nd attempt.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43389 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 11:39:03 +00:00
johnniwinther@google.com 93fef72fb3 Update analyzer and dartium status.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43386 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 09:53:31 +00:00
johnniwinther@google.com d9e1bcc91b Support async/await in dart2dart.
BUG=
R=floitsch@google.com, paulberry@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43380 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 08:31:54 +00:00
paulberry@google.com bde433f33a Report a compile-time error if async/sync/yield used as an identifier.
This error is only reported inside methods marked "async", "async*",
or "sync*".

BUG=dartbug.com/22206
R=scheglov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43368 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-02 23:13:08 +00:00
paulberry@google.com b40a5702b3 Fix async/await type checking in analyzer.
This required making the "async" library into TypeProvider so that we
can create Future<...> types when doing resolution and error/hint
checking.

BUG=21888,22053,22091,22092,22160,22164
R=brianwilkerson@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43361 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-02 20:58:37 +00:00
johnniwinther@google.com 9a42285d5f Fix new dart2dart backend.
BUG=
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43330 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 11:24:24 +00:00
brianwilkerson@google.com 3f369c141c Add missed issue number
R=paulberry@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43300 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 17:03:34 +00:00
brianwilkerson@google.com cb6c16922f Fix for issue 22052
R=scheglov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43292 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 16:01:58 +00:00
johnniwinther@google.com d0ece3e22f Remove status lines.
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43234 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 11:51:21 +00:00
johnniwinther@google.com 519263807a Support enums in dart2dart.
BUG=
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43230 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 09:04:49 +00:00
sigurdm@google.com c95d6162a8 Let the dart2dart compiler stop in case of failure (errors).
This is a stop-gap measure to avoid crashes

BUG= dartbug.com/22085
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43172 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 09:03:08 +00:00
vegorov@google.com d96def0231 Mark load_to_load_unaligned_forwarding_vm_test as Pass, Crash on platforms other than IA32/X64.
For some reason it passes on the real ARM hardware.

TBR=fschneider@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43141 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-26 16:50:29 +00:00
vegorov@google.com 2b42069b43 Fix LoadOptimizer's handling of load/stores with constant indices for TypedData.
LoadOptimizer computes KILL sets in assumption that place X[C] can alias place X[K] if and only if K == C. This however does not hold for TypedData where X[0] can alias X[1] if we are reading 32bit value at X[0] and 8bit value at X[1]. The only thing that TypedData guarantees is that all accesses are done with byte offsets aligned by the size of the data type.

This change incorporates TypeData elements aliasing rules into LoadOptimizer:

- Place hierarchy was extended with constant index places for TypedData X[C|S]:
  - C is a byte offset to the element being read instead of an unscaled index that was used before;
  - S size of the element being read.

- KILL set computation ensures the following aliasing rule:

      X[C|S] aliases X[RoundDown(C, S')|S'] for all sizes S' > S

R=fschneider@google.com
BUG=http://dartbug.com/22120

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43137 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-26 15:14:35 +00:00
johnniwinther@google.com 21e29f9a60 Update enum_const_test to isolate problem.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43128 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-26 08:04:40 +00:00
rmacnak@google.com db79e9cca6 Rename is_visible to is_reflectable; use is_debuggable instead of is_reflectable to decide whether to filter a frame from stack traces.
Merge verbose_stacktrace flag into show_hidden_frames.

Don't mark native functions as non-debuggable (breakpoints don't actually work there now but nothing goes wrong).

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43121 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-23 21:16:40 +00:00
fschneider@google.com e081d375e4 Fix 64-bit bug in optimized class-check instructions.
The mask is machine-word wide, so the computation of the mask
must not use a 32-bit shift operation.

BUG=dartbug.com/22104
TEST=tests/language/vm/optimized_check_class_test.dart
R=vegorov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43014 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-20 16:00:43 +00:00
sigurdm@google.com b9c1798175 Improve mirror_in_static_init_test
Make it a multitest.
Fix a syntax error.
Also move it to lib/mirrors/ - it will then automatically be skipped by
dart2dart.

BUG=dartbug.com/22071
R=floitsch@google.com, karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42992 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-19 14:52:25 +00:00
floitsch@google.com a44d1c44e1 dart2js: capture type variables in closures, if they are only used in literals.
BUG= http://dartbug.com/22060
R=asgerf@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42989 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-19 13:32:00 +00:00
johnniwinther@google.com 23ee3c6b26 Fix enum_syntax_test for dart2js.
BUG=http://dartbug.com/21648
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42955 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-16 13:58:57 +00:00
sigurdm@google.com 2486f7c594 Mark dart2dart crashes in status files
BUG=
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42954 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-16 13:50:13 +00:00
ahe@google.com 8e39d5fed8 Recover from crash in language/async_test/constructor4.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42904 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-15 12:04:33 +00:00
whesse@google.com 247ff772d6 Update status files, replace "dartbug.com" with "Issue ".
BUG=
R=ricow@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42900 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-15 10:27:11 +00:00
karlklose@google.com 7e80e7dfea Remove tracking of factories used with type arguments.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42899 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-15 08:39:45 +00:00
koda@google.com 4c7e0fa307 Suspend long jump scope when invoking Dart code.
R=rmacnak@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42880 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-14 18:37:43 +00:00
whesse@google.com 5bba992965 Enable co19 dart2js browser tests on content shell (drt).
Update co19 status files for Firefox update to 35, and other flakes.

TBR=ricow@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42873 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-14 15:56:28 +00:00
ahe@google.com 3ca1728f97 Recover from read errors.
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42872 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-14 14:16:10 +00:00
sigurdm@google.com b641b80547 One more try on the status files.
Turned out that dart2js somehow passes the test in checked mode.

I have not investigated further.

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42868 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-14 13:18:03 +00:00
sigurdm@google.com e9abfa85dd Fix status files
Followup to r42858 https://codereview.chromium.org//847123002 .

BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42860 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-14 11:53:14 +00:00
sigurdm@google.com bc8a7faf62 Fix status files to allow async-await tests to run on non-vm
Also fix a syntax-error in one test to make the analyzer happy.
BUG=
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42858 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-14 11:07:35 +00:00
paulberry@google.com 561f99c845 Fix static warnings in generic_instanceof4_test.
R=scheglov@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42837 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-13 20:49:52 +00:00
regis@google.com 556442fec6 Disable new test for dart2js failing in minified mode.
Review URL: https://codereview.chromium.org//847233002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42829 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-13 19:10:54 +00:00
regis@google.com ef1c21b293 Fix issue 21795.
Add regression test.

R=fschneider@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42824 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-13 17:16:50 +00:00
floitsch@google.com bac902a7eb dart2js: add failing test for generic types.
See http://dartbug.com/21969.

R=karlklose@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42807 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-13 14:06:40 +00:00
asgerf@google.com e50fd28ff7 Use closure conversion in new dart2js backend.
New instructions: CreateBox, SetField, GetField, CreateClosureClass.

The "old" instructions based on ref-cells are still in use by dart2dart:
GetClosureVariable, SetClosureVariable, CreateFunction.

dart2dart still does not support captured for-loop variables, but this
is a separate issue.

BUG=
R=floitsch@google.com, kmillikin@google.com, sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42802 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-13 11:57:15 +00:00
lrn@google.com 8ebe51d63c Update status files after enforcing integer arguments to toRadixString etc, and adding more and harder tests for toRadixString.
Review URL: https://codereview.chromium.org//849573002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42769 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-12 10:48:49 +00:00
floitsch@google.com 9a7236dd4a Fix status file for dart2dart.
Review URL: https://codereview.chromium.org//801223005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42765 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-12 09:36:32 +00:00
floitsch@google.com 927ac592bd Update status file and test.
Review URL: https://codereview.chromium.org//823143005

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42739 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 16:59:26 +00:00
floitsch@google.com 86d9c01cd5 dart2js: Support new const operations on strings.
BUG= http://dartbug.com/21001
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42737 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 16:07:53 +00:00
ahe@google.com 1e3bca615b Less fatal errors
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42731 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 11:28:04 +00:00
johnniwinther@google.com 04e6184abe Handle platform access through prefix in dart2dart
BUG=
R=sigurdm@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42726 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-09 10:29:59 +00:00
ahe@google.com 1badb16221 Update status after fixing crash
Review URL: https://codereview.chromium.org//840063002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42699 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-08 16:32:43 +00:00
ahe@google.com 262e15dbc8 Temporary crash marker
Review URL: https://codereview.chromium.org//832893004

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42680 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-08 09:39:12 +00:00
hausner@google.com bb1ab60dc0 First step in eliminating —enable_async flag
Switch default value of enable-async to true, and remove the flag
from test source code.

Next step is to remove the flag altogether

R=iposva@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42670 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-07 19:42:59 +00:00
sigurdm@google.com e0c84f022f Mark failing csp tests as failing in browser only.
BUG=
R=floitsch@google.com, zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42628 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-06 12:32:49 +00:00
floitsch@google.com f598816be1 dart2js: is-checks for the new emitter.
Also includes more fine-grained access to classes.

R=johnniwinther@google.com, kasperl@google.com, zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42587 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-05 11:33:32 +00:00
srdjan@google.com 49343faead Do not clobber dead temp registers at RestoreLiveRegisters as it may destroy the content of the result register as well. Fixes issue 21957.
Review URL: https://codereview.chromium.org//818343002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@42566 260f80e4-7a28-3924-810f-c04153c831b5
2014-12-24 01:20:41 +00:00