Commit Graph

4698 Commits

Author SHA1 Message Date
herhut@google.com f8ab7c39e3 Support tearoffs in the new emitter.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43429 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 21:32:31 +00:00
herhut@google.com 62bb7e2d38 Add member type to model.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43400 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:29:29 +00:00
zarah@google.com 4a61829f1a dart2js: emit noSuchMethod stubs in the new emitter.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43399 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:25:36 +00:00
johnniwinther@google.com 2e253b6b39 Fix await parsing.
BUG=http://dartbug.com/22183
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43398 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:20:21 +00:00
kmillikin@google.com 31fc0e5a8e Rename ClosureVariable, use separate IR forms for declaration and assignment.
I plan to use ClosureVariable for the variables assigned in try, so
the name will become incorrect.  They are renamed to MutableVariable.

Use separate IR forms for declaration of MutableVariable (LetMutable)
and for assignment to mutable variables (SetMutableVariable).  This
distinction doesn't do much in this change other than make the tree a
bit more well-formed, but I plan to make LetMutable take a list of
variables and values (e.g. all the variables mutated in a try).

R=asgerf@google.com, karlklose@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43396 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 14:18:13 +00:00
zarah@google.com b5331e83b1 dart2js: move generation of noSuchMethodStubs into ClassStubGenerator.
Depends on https://codereview.chromium.org/895893002/ .

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43391 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 12:17:18 +00:00
zarah@google.com b1c9a69b52 dart2js: refactor nsm_emitter.
This is done as a step towards sharing the handling of noSuchMethod between the new and the old emitter.

R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43388 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 11:12:19 +00:00
herhut@google.com bb07322aa5 Store the aliasName of a method in the model.
BUG=
R=floitsch@google.com, zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43387 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 10:30:55 +00:00
karlklose@google.com d3b224d068 Some minor fixes.
R=kmillikin@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43385 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 09:28:54 +00:00
herhut@google.com d2781ff640 Fix type annotations that violate subtyping constraint on overriden methods.
BUG=
R=floitsch@google.com, johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43383 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 09:13:25 +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
zarah@google.com 4f88f0cfb7 dart2js: emit callstubs in new emitter and rename to stubs.
The rename is because we will use the same field for noSuchMethod stubs in the next step.

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43378 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-03 08:06:32 +00:00
johnniwinther@google.com c0d40c8992 Fix shift in source map positions.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43352 260f80e4-7a28-3924-810f-c04153c831b5
2015-02-02 10:54:57 +00:00
floitsch@google.com 3fb419841a dart2js: emit adapters in new emitter.
This is pretty incomplete, since it doesn't take tear-offs into account, but most adapters should work.

R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43347 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 21:50:26 +00:00
floitsch@google.com e9058998f5 dart2js: Refactor how parameter stubs are handled.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43346 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 21:48:23 +00:00
zarah@google.com 89510f4ff4 dart2js: Move parameterStub generation to parameter_stub_generator and add parameter stubs to model.
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43338 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 13:31:33 +00:00
kmillikin@google.com d729e9a9b5 dart2dart: Remove the list of closureVariables from FunctionDefinitions.
Function definitions had a list of closure variables (which was always
empty in the JS backend).  This list has no code generation semantics
because it is ignored by the Tree IR builder.  Instead, when translating
to Tree IR, a reference to an unbound closure variable implicitly
'declares' it.

The closure variables were however used for the S-expression serialized
representation.  They can be eliminated here as well by using the same
trick as the Tree IR builder.

R=asgerf@google.com
BUG=

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43337 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 13:20:23 +00:00
johnniwinther@google.com 6adce0d176 Enable enums by default.
BUG=http://dartbug.com/21885
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43334 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 12:21:12 +00:00
johnniwinther@google.com f555a43210 Support async getters.
BUG=http://dartbug.com/22184
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43333 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 12:13:46 +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
zarah@google.com 6a8effe2c9 dart2js: move recording of interceptorInvocationNames from addParameterStub.
This is done as a step towards sharing the generation of parameter stubs between the new and the old emitter. The remaining code in addParameterStub is now independent of the old emitter.

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43326 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-30 07:52:48 +00:00
floitsch@google.com c7b7332e92 dart2js: Rename metadata_emitter.dart to metadata_collector.dart.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43321 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 23:25:02 +00:00
floitsch@google.com 2abf9d8f50 dart2js: emit metadata in new emitter.
The metadata currently doesn't yet contain all the information that is needed.

R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43320 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 23:23:30 +00:00
floitsch@google.com aaedcf4982 dart2js: Fix types in new emitter.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43319 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 23:22:25 +00:00
floitsch@google.com b06ece7160 dart2js: Rename metadataEmitter to metadataCollector and make it independent of old emitter.
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43293 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 16:05:58 +00:00
herhut@google.com f3320ee386 Revert "Move reflection support out of model."
This reverts r43289.

BUG=
TBR=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43291 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 15:39:19 +00:00
herhut@google.com b1cbce0324 Move reflection support out of model.
BUG=
R=floitsch@google.com, zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43289 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 15:05:04 +00:00
floitsch@google.com b5aaeefa52 dart2js: Move metadata from old_emitter to shared directory.
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43288 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 14:54:25 +00:00
herhut@google.com d7d9541c39 Suffix temporary API for incremental compilation in program_builder with HackForIncrementalCompilation.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43286 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 14:50:21 +00:00
zarah@google.com 13c8a282a4 Revert "dart2js: remove invalid case in generateParameterStubStatements in NativeEmitter."
Added comment.

This reverts commit r43282.

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43285 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 14:32:28 +00:00
zarah@google.com 23f271218d dart2js: remove invalid case in generateParameterStubStatements in NativeEmitter.
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43282 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 13:36:42 +00:00
herhut@google.com 3a3481efdf Fix CPA inference.
BUG=
TBR=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43281 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 13:25:36 +00:00
herhut@google.com 52473bd7ba Move computation of method flags into model.
BUG=
R=floitsch@google.com, zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43279 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 12:56:04 +00:00
zarah@google.com c34e9461c0 dart2js: remove unused parameter.
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43278 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 12:51:06 +00:00
herhut@google.com cf16709196 Fix remaining uses of lookupConstructor.
BUG=
TBR=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43277 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 12:24:54 +00:00
johnniwinther@google.com adb08cfc80 Supported versioned patching.
BUG=
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43275 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 12:07:48 +00:00
herhut@google.com 93fe77b250 Change signature of lookupConstructor to only require a name.
BUG=
R=johnniwinther@google.com

Committed: https://code.google.com/p/dart/source/detail?r=43067

Reverted: https://code.google.com/p/dart/source/detail?r=43068

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43272 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 09:34:42 +00:00
johnniwinther@google.com 6fb90bc36c Support constructor declarations in analyzer2dart.
BUG=
R=herhut@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43271 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 07:57:57 +00:00
sra@google.com 42c9644934 Give CodeEmitterTask a name for -v compiles
It was printing as 'Unknown task'.

R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43269 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-29 02:35:17 +00:00
floitsch@google.com 993755261e Address comments frorm https://codereview.chromium.org/871073002/
Review URL: https://codereview.chromium.org//885673002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43245 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 16:25:16 +00:00
herhut@google.com 8bb44a196d Improve comment of isInstantiated.
BUG=
R=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43243 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 13:43:39 +00:00
floitsch@google.com 11e7613aae dart2js: Remove unused variable.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43240 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 13:29:38 +00:00
floitsch@google.com 9fb8b88e0c dart2js: store typeToInterceptorMap in the model.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43239 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 13:11:26 +00:00
floitsch@google.com 345f72a4bd dart2js: Not all interceptor accesses are safe.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43237 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 13:09:52 +00:00
floitsch@google.com 16e7e0cc85 dart2js: add mangled-global-names embedded global to new emitter.
R=zarah@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43236 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 13:03:59 +00:00
herhut@google.com e2d3745597 Use [ClassElement.isSubclassOf] instead of [World.isSubClassOf].
BUG=
TBR=johnniwinther@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43232 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 09:45:13 +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
herhut@google.com f1ac5d30ad Use prototype inheritance to reduce number of is check properties.
BUG=
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43229 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-28 08:54:46 +00:00
zarah@google.com ce4808f59f dart2js: add type lookup in the new emitter.
R=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43189 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 16:21:01 +00:00
herhut@google.com 01bfb2af9d Use the unused [assembleCode].
BUG=
TBR=floitsch@google.com

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

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart@43187 260f80e4-7a28-3924-810f-c04153c831b5
2015-01-27 15:19:56 +00:00