whesse@google.com
56e8555efd
Mark failing android content_shell tests in status files.
...
BUG=dartbug.com/19276 dartbug.com/19274
R=kustermann@google.com
Review URL: https://codereview.chromium.org//316363005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@37079 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-06 13:37:19 +00:00
whesse@google.com
512ef6b6c8
Update status files with ContentShellOnAndroid failures.
...
BUG=dartbug.com/19127
R=ricow@google.com
Review URL: https://codereview.chromium.org//303123012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36867 260f80e4-7a28-3924-810f-c04153c831b5
2014-06-02 11:40:06 +00:00
zra@google.com
ccf5def384
Fixes bug in megamorphic instance call on arm64.
...
R=regis@google.com
Review URL: https://codereview.chromium.org//289333004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36306 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-19 16:48:10 +00:00
ricow@google.com
87736b119b
Mark language/megamorphic_no_such_method_test and standalone/io/http_shutdown_test as skip on simarm64
...
I did _not_ file a new bug since there is already a section with tests that times out on simarm64 without a bug, so I assume this is being worked on.
The cl that triggered this is pretty strange, should not really have an impact:
https://code.google.com/p/dart/source/detail?r=36290
R=lrn@google.com
Review URL: https://codereview.chromium.org//296483003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36294 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-19 12:59:53 +00:00
zra@google.com
eb11b8a7a0
Adds far-branches to arm64.
...
Also fixes bugs and enables tests.
R=regis@google.com
Review URL: https://codereview.chromium.org//283513002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@36051 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-12 18:43:08 +00:00
zra@google.com
5d94e8900f
Adds single-precision and SIMD load/store to arm64.
...
Also adds conversion between double an single-precision floats.
R=regis@google.com
Review URL: https://codereview.chromium.org//269343010
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35933 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-08 19:06:04 +00:00
zra@google.com
842a42a5a9
Adds unary double operations to ARM64, enables many tests.
...
Also removes disabling of optimization.
R=regis@google.com
Review URL: https://codereview.chromium.org//267283004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35863 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-07 20:04:05 +00:00
zra@google.com
65946f752c
Adds arm64 double arithmetic instructions.
...
Also adds:
- double comparison instructions,
- conditional increment instruction,
- double <-> int conversion instructions,
- IL instructions that use these,
- NoSuchMethod call stub,
- and bug fixes.
R=regis@google.com
Review URL: https://codereview.chromium.org//262333007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35830 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-06 20:50:44 +00:00
zra@google.com
037a72e059
Enables many language tests for arm64.
...
- Adds msub and smulh instructions for implementing
BinarySmiOp.
- Adds fmovdd to move doubles between V registers.
- Implements many stubs and IL instructions. These are
ported from ARM with small fix-ups. Deopt code comes
from x64 because the stack frame layout is the same.
R=regis@google.com
Review URL: https://codereview.chromium.org//263243002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35753 260f80e4-7a28-3924-810f-c04153c831b5
2014-05-05 18:09:08 +00:00
sigurdm@google.com
00910f947b
Insert checks before deferred calls and accesses.
...
These checks will throw an error if the library was not loaded.
R=floitsch@google.com , johnniwinther@google.com
Committed: https://code.google.com/p/dart/source/detail?r=35306
Was reverted by Issue 247863005 r35308 due to failing co19-test
Review URL: https://codereview.chromium.org//232563006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35355 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-24 07:51:35 +00:00
sigurdm@google.com
a31796ed37
Revert "Insert checks before deferred calls and accesses."
...
This reverts commit r35306.
Review URL: https://codereview.chromium.org//247863005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35308 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 09:23:33 +00:00
sigurdm@google.com
910fffd40d
Insert checks before deferred calls and accesses.
...
These checks will throw an error if the library was not loaded.
R=floitsch@google.com , johnniwinther@google.com
Review URL: https://codereview.chromium.org//232563006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@35306 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-23 07:56:03 +00:00
hausner@google.com
6051d21b5c
Conflicting inheritance from superinterface is not a compile time error
...
Test override_inheritance_mixed was partially wrong.
Inheriting conflicting members from superinterfaces is not a compile time error,
just a static type warning.
See also bug 16137 for details.
R=gbracha@google.com
Review URL: https://codereview.chromium.org//230423004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34883 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-09 17:43:14 +00:00
whesse@google.com
9965700b95
Rename language/disasssemble_test, add to status file.
...
BUG=dartbug.com/18122
R=kustermann@google.com
Review URL: https://codereview.chromium.org//230173006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34879 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-09 14:29:48 +00:00
hausner@google.com
2b4e3c7c99
Implement deferred constant support
...
Compile time constants lose their const-ness if they are referred
to through a deferred prefix. This CL adds a flag to some ast node
types that remembers whether a field or closure was referred to
via a deferred prefix. If so, the compile-time const analysis flags
the value as non-const.
R=srdjan@google.com
Review URL: https://codereview.chromium.org//226953002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34785 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-07 17:31:32 +00:00
regis@google.com
91388a5f79
Simplify and fix instantiation of recursive types.
...
Add tests for non-contractive types.
Cleanup language tests status file.
Enhance tracing of type finalization.
R=hausner@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//224793002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34739 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-04 18:27:53 +00:00
zra@google.com
2fe51715e5
Begins work on ARM64, first assembler test.
...
Most new code is in constants_arm64.h and
{assembler,disassembler,simulator}_arm64.{h,cc}
The rest of the CL just #def's out tests, modifies status files,
and adds UNIMPLEMENTED functions, etc.
R=regis@google.com
Review URL: https://codereview.chromium.org//221133002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34654 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-02 17:39:32 +00:00
hausner@google.com
b36457263a
Deferred prefix support in metadata
...
Deferred prefixes are never ok in metadata, since metadata is required
to be compile time constant.
R=rmacnak@google.com
Review URL: https://codereview.chromium.org//219473007
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34601 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-01 16:11:28 +00:00
karlklose@google.com
dfc000bd0c
Adjust dart2dart test expectations after r34567.
...
R=sigurdm@google.com ,hausner@google.com
Review URL: https://codereview.chromium.org//220233004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34586 260f80e4-7a28-3924-810f-c04153c831b5
2014-04-01 07:59:01 +00:00
hausner@google.com
ed24226376
Support deferred library prefix syntax
...
First step towards deferred library support:
- Parse the “deferred as” import clause.
- Implement p.loadLibrary() which returns a future that
completes when the library is loaded.
- Treat type annotations of deferred types as malformed.
- Throw NoSuchMethodError when calling functions from
unloaded libraries.
- Libraries are still read synchronously, but items in the
library won’t be visible through the deferred prefix until
the future returned by loadLibrary() completes.
Review URL: https://codereview.chromium.org//208323015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34481 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-27 21:20:47 +00:00
regis@google.com
f60ab4dd11
Detect and reject illegal recursive types (non-contractive types).
...
Fixed instantiation and equality of recursive types.
Added many asserts to detect issues with recursive types.
Disabled bad tests. They declare illegal types and will be fixed in a later cl.
R=hausner@google.com , srdjan@google.com
Review URL: https://codereview.chromium.org//211963003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34460 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-26 23:38:18 +00:00
johnniwinther@google.com
1692a15f4e
Add 'static type error' tags to multitests.
...
BUG=http://dartbug.com/16411
R=ricow@google.com
Review URL: https://codereview.chromium.org//150223002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34412 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-26 09:03:47 +00:00
sigurdm@google.com
30ac6d116d
Introduces the new syntax for deferred loading
...
import "lib.dart" deferred as lib;
And then injecting a function of the name "loadLibrary" into the
namespace of the import prefix.
This FunctionElement is a triggers the builder to emit special code that causes _loadLibraryWrapper in js_helper to be called.
Dart2dart will not crash on deferred loading, but calls to
loadLibrary will become calls to a (not-existing) top-level function
loadLibrary.
The old syntax (using metadata) is still working
For now keeping the language tests with the old syntax in addition to
the updated tests.
R=floitsch@google.com , johnniwinther@google.com
Review URL: https://codereview.chromium.org//201613006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34230 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-21 07:50:08 +00:00
regis@google.com
ed690f97b6
Fix canonicalization of types.
...
Add functions retrieving canonical types by their index or vice versa (used by
a future cl supporting types in vm service).
Add getters for type argument instantiations (used by future cl).
R=hausner@google.com
Review URL: https://codereview.chromium.org//203443012
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@34128 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-19 18:48:57 +00:00
whesse@google.com
7dbc5bc463
Revert the removal of some status file lines for unchecked dartium.
...
The lines were removed in r33807.
BUG=
R=ahe@google.com
Review URL: https://codereview.chromium.org//195893036
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33814 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-18 17:16:41 +00:00
whesse@google.com
62c79adbd0
Add entries for ContentShellOnAndroid runtime to status files.
...
BUG=
R=ricow@google.com
Review URL: https://codereview.chromium.org//203373003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33807 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-18 14:47:56 +00:00
fschneider@google.com
37b30ab2ac
Alternative fix for .call invocation of closures.
...
This also covers "closurization" of the .call method.
This relies on the fact that f.call === f if f is a closure.
This means that adding a simple getter to _FunctionImpl that
returns this is enough. No need for a separate dispatch.
This CL reverts the previous fix for issue 12602 (modulo the
additional tests).
BUG=dartbug.com/17473, dartbug.com/12602
R=iposva@google.com
Review URL: https://codereview.chromium.org//200193002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33736 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-17 10:31:33 +00:00
sigurdm@google.com
26387eca98
Constrain constant references from deferred libraries
...
Now any reference to a constant from a deferred library in a constant context will give an static error.
Also fixed the const-new expression constraint so it works with named constructors.
Split the deferred_constraints_test into deferred_constraints_type_annotation_test and deferred_constraints_constants_test
R=floitsch@google.com
Review URL: https://codereview.chromium.org//195983006
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33734 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-17 09:13:30 +00:00
ricow@google.com
2d86a4e1f9
Remove suppression for language/call_test on arm
...
I have fixed up the test execution environment (delayed by the board not being available)
Review URL: https://codereview.chromium.org//195983017
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33684 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-14 07:02:27 +00:00
rmacnak@google.com
f0ae7b282e
Add language test for closurization of a closure's call method.
...
R=gbracha@google.com
Review URL: https://codereview.chromium.org//196793014
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33659 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-13 18:59:03 +00:00
whesse@google.com
6aa0e46095
Adjust test status files for MIPS architecture.
...
BUG=
R=ricow@google.com
Review URL: https://codereview.chromium.org//198843002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33648 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-13 11:51:03 +00:00
zra@google.com
8c289f8cd8
Disables language/call_test for ARM
...
Issue 17449
Review URL: https://codereview.chromium.org//196023008
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33621 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-12 22:09:33 +00:00
fschneider@google.com
f75ef2e6ab
Fix invocation of closures via .call in the VM.
...
Calling closures via .call does now work in the VM - it was working in
dart2js already. Calling .call on a closure is implemented to go through
a dispatcher method. These dispatcher methods are automatically created and
cached in the same way as NoSuchMethod- or field-invocation dispatchers.
This CL does not change the way regular closure invocation works in
the VM. It is therefore performance-neutral for normal closure calls.
BUG=dartbug.com/12602
TEST=language/call_test
R=iposva@google.com
Review URL: https://codereview.chromium.org//188703004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33576 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-12 14:02:27 +00:00
sigurdm@google.com
006ab76f24
Mark tests as flaky.
...
The browsers seem to behave strangely with multitests.
Review URL: https://codereview.chromium.org//189563005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33430 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-07 14:54:25 +00:00
sigurdm@google.com
0e9a7a32ec
Introduce constraints of deferred constants.
...
Deferred classes can not be used in const new instance expressions.
This CL depends on: https://codereview.chromium.org/177543002/
R=floitsch@google.com
Review URL: https://codereview.chromium.org//183743031
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33425 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-07 13:11:09 +00:00
sigurdm@google.com
7d8fe13b6c
Constrain type annotations with deferred types.
...
This implements the constraint that a type imported with a deferred import
cannot be used in type annotations in the importing module. They can still be
used in new-expressions. A violation will trigger a warning, and replace the
type with a MalformedType.
Was reverted by: Issue 185053005 r33277
R=floitsch@google.com , johnniwinther@google.com
Committed: https://code.google.com/p/dart/source/detail?r=33273
Review URL: https://codereview.chromium.org//177543002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33417 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-07 10:04:37 +00:00
scheglov@google.com
9d622fc1d9
Unroll 'synchronized {}' in java2dart.
...
...and corresponding 'analyzer' snapshot.
R=brianwilkerson@google.com
BUG=
Review URL: https://codereview.chromium.org//185403018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33318 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-05 02:30:21 +00:00
hausner@google.com
776a6cfc2e
Always evaluate e in (e is T)
...
(e is T) is compiled to a throw TypeError when T is malformed.
This change makes sure that e is evaluated even though it is
ignored. We need to do this due to possible side effects.
Fixes issue 17253
R=regis@google.com
Review URL: https://codereview.chromium.org//185553018
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33299 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-04 20:44:51 +00:00
sigurdm@google.com
ac702a92da
Revert "Constrain type annotations with deferred types."
...
This reverts commit 33273 and 33276.
R=karlklose@google.com
Review URL: https://codereview.chromium.org//185053005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33277 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-04 15:27:09 +00:00
sigurdm@google.com
00d6464559
Fix status file
...
R=karlklose@google.com
Review URL: https://codereview.chromium.org//182113003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33276 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-04 14:57:47 +00:00
sigurdm@google.com
1607192c30
Constrain type annotations with deferred types.
...
This implements the constraint that a type imported with a deferred import
cannot be used in type annotations in the importing module. They can still be
used in new-expressions. A violation will trigger a warning, and replace the
type with a MalformedType.
R=floitsch@google.com , johnniwinther@google.com
Review URL: https://codereview.chromium.org//177543002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33273 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-04 14:12:17 +00:00
hausner@google.com
97e7f2c299
Fix type checks with malformed types
...
Parser must continue to parse the rest of an expression that contains
a type test with a malformed type.
Before:
'file:XXX’: error: line 5 pos 12: ')' expected
if (3 is X && 2 == 2) print("foo");
After:
'file:XXX’: malformed type: line 5 pos 12: type 'X' is not loaded
if (3 is X && 2 == 2) print("foo");
^
type error.
#0 main (file:XXX:5:12)
#1 _startIsolate.isolateStartHandler (dart:isolate-patch/isolate_patch.dart:216)
#2 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:115)
R=regis@google.com
Review URL: https://codereview.chromium.org//183743015
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33253 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-03 23:27:44 +00:00
floitsch@google.com
2e04791d8e
Follow factory redirections when checking case expressions.
...
This version does the check in the resolver and uses the constant values and not just the types. As such, it also follows the constructor chain.
R=karlklose@google.com
Review URL: https://codereview.chromium.org//184663004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33239 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-03 19:22:13 +00:00
floitsch@google.com
18c76007b1
Check that const-map keys don't override equals.
...
BUG= http://dartbug.com/17123
R=karlklose@google.com
Review URL: https://codereview.chromium.org//179293005
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@33201 260f80e4-7a28-3924-810f-c04153c831b5
2014-03-03 09:52:51 +00:00
sigurdm@google.com
1bcf50eb73
Change the negative tests called language/deferred* to multitests.
...
Update the status files correspondingly.
R=johnniwinther@google.com
Committed: https://code.google.com/p/dart/source/detail?r=32890
Reverted: by https://codereview.chromium.org/175123002/ r32895
Review URL: https://codereview.chromium.org//169483004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32958 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-24 11:47:03 +00:00
sigurdm@google.com
a27abd6f0b
Revert "Change the negative tests called language/deferred* to multitests."
...
This reverts commit r32890.
Review URL: https://codereview.chromium.org//175123002
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32895 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-21 12:56:45 +00:00
sigurdm@google.com
3f28d6a271
Change the negative tests called language/deferred* to multitests.
...
Update the status files correspondingly.
R=johnniwinther@google.com
Review URL: https://codereview.chromium.org//169483004
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32890 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-21 12:12:23 +00:00
sigurdm@google.com
d807878bbd
Add prefix constraints for deferred imports.
...
R=floitsch@google.com
Review URL: https://codereview.chromium.org//169703003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32881 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-21 09:39:50 +00:00
johnniwinther@google.com
0ec5deb539
Status voodoo.
...
BUG=
Review URL: https://codereview.chromium.org//166043003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32696 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-14 12:49:22 +00:00
johnniwinther@google.com
d75b2291ca
Fix language tests wrt. warnings.
...
BUG=
R=karlklose@google.com
Committed: https://code.google.com/p/dart/source/detail?r=32689
Review URL: https://codereview.chromium.org//158733003
git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@32691 260f80e4-7a28-3924-810f-c04153c831b5
2014-02-14 11:59:12 +00:00