OLD | NEW |
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2012, 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 #ifndef VM_FLOW_GRAPH_BUILDER_H_ | 5 #ifndef VM_FLOW_GRAPH_BUILDER_H_ |
6 #define VM_FLOW_GRAPH_BUILDER_H_ | 6 #define VM_FLOW_GRAPH_BUILDER_H_ |
7 | 7 |
8 #include "platform/assert.h" | 8 #include "platform/assert.h" |
9 #include "platform/globals.h" | 9 #include "platform/globals.h" |
10 #include "vm/allocation.h" | 10 #include "vm/allocation.h" |
(...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
400 bool result_is_needed); | 400 bool result_is_needed); |
401 | 401 |
402 StrictCompareInstr* BuildStrictCompare(AstNode* left, | 402 StrictCompareInstr* BuildStrictCompare(AstNode* left, |
403 AstNode* right, | 403 AstNode* right, |
404 Token::Kind kind, | 404 Token::Kind kind, |
405 intptr_t token_pos); | 405 intptr_t token_pos); |
406 | 406 |
407 virtual void BuildTypeTest(ComparisonNode* node); | 407 virtual void BuildTypeTest(ComparisonNode* node); |
408 virtual void BuildTypeCast(ComparisonNode* node); | 408 virtual void BuildTypeCast(ComparisonNode* node); |
409 | 409 |
410 bool MustSaveRestoreContext(SequenceNode* node) const; | 410 bool HasContextScope() const; |
411 | 411 |
412 // Moves the nth parent context into the context register. | 412 // Moves the nth parent context into the context register. |
413 void UnchainContexts(intptr_t n); | 413 void UnchainContexts(intptr_t n); |
414 | 414 |
415 void CloseFragment() { exit_ = NULL; } | 415 void CloseFragment() { exit_ = NULL; } |
416 | 416 |
417 // Returns a local variable index for a temporary local that is | 417 // Returns a local variable index for a temporary local that is |
418 // on top of the current expression stack. | 418 // on top of the current expression stack. |
419 intptr_t GetCurrentTempLocalIndex() const; | 419 intptr_t GetCurrentTempLocalIndex() const; |
420 | 420 |
(...skipping 182 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
603 // Output parameters. | 603 // Output parameters. |
604 GrowableArray<TargetEntryInstr**> true_successor_addresses_; | 604 GrowableArray<TargetEntryInstr**> true_successor_addresses_; |
605 GrowableArray<TargetEntryInstr**> false_successor_addresses_; | 605 GrowableArray<TargetEntryInstr**> false_successor_addresses_; |
606 | 606 |
607 intptr_t condition_token_pos_; | 607 intptr_t condition_token_pos_; |
608 }; | 608 }; |
609 | 609 |
610 } // namespace dart | 610 } // namespace dart |
611 | 611 |
612 #endif // VM_FLOW_GRAPH_BUILDER_H_ | 612 #endif // VM_FLOW_GRAPH_BUILDER_H_ |
OLD | NEW |