Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(128)

Side by Side Diff: runtime/vm/ast_transformer.cc

Issue 1722733002: In background compilation make a copy of Field in order to freeze its state (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: e Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/ast_transformer.h" 5 #include "vm/ast_transformer.h"
6 6
7 #include "vm/object_store.h" 7 #include "vm/object_store.h"
8 #include "vm/parser.h" 8 #include "vm/parser.h"
9 #include "vm/thread.h" 9 #include "vm/thread.h"
10 10
(...skipping 504 matching lines...) Expand 10 before | Expand all | Expand 10 after
515 515
516 516
517 void AwaitTransformer::VisitLoadStaticFieldNode(LoadStaticFieldNode* node) { 517 void AwaitTransformer::VisitLoadStaticFieldNode(LoadStaticFieldNode* node) {
518 result_ = node; 518 result_ = node;
519 } 519 }
520 520
521 521
522 void AwaitTransformer::VisitStoreStaticFieldNode(StoreStaticFieldNode* node) { 522 void AwaitTransformer::VisitStoreStaticFieldNode(StoreStaticFieldNode* node) {
523 AstNode* new_value = Transform(node->value()); 523 AstNode* new_value = Transform(node->value());
524 result_ = new(Z) StoreStaticFieldNode(node->token_pos(), 524 result_ = new(Z) StoreStaticFieldNode(node->token_pos(),
525 node->field(), 525 *node->field().OriginalAsHandle(Z),
siva 2016/02/25 23:38:32 ditto comment.
srdjan 2016/02/26 00:40:42 Resolved using Field::ZoneHandle
526 new_value); 526 new_value);
527 } 527 }
528 528
529 529
530 void AwaitTransformer::VisitLoadIndexedNode(LoadIndexedNode* node) { 530 void AwaitTransformer::VisitLoadIndexedNode(LoadIndexedNode* node) {
531 AstNode* new_array = Transform(node->array()); 531 AstNode* new_array = Transform(node->array());
532 AstNode* new_index = Transform(node->index_expr()); 532 AstNode* new_index = Transform(node->index_expr());
533 LocalVariable* result = AddToPreambleNewTempVar( 533 LocalVariable* result = AddToPreambleNewTempVar(
534 new(Z) LoadIndexedNode(node->token_pos(), 534 new(Z) LoadIndexedNode(node->token_pos(),
535 new_array, 535 new_array,
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
596 596
597 597
598 void AwaitTransformer::VisitThrowNode(ThrowNode* node) { 598 void AwaitTransformer::VisitThrowNode(ThrowNode* node) {
599 AstNode* new_exception = Transform(node->exception()); 599 AstNode* new_exception = Transform(node->exception());
600 result_ = new(Z) ThrowNode(node->token_pos(), 600 result_ = new(Z) ThrowNode(node->token_pos(),
601 new_exception, 601 new_exception,
602 node->stacktrace()); 602 node->stacktrace());
603 } 603 }
604 604
605 } // namespace dart 605 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698