OLD | NEW |
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file | 1 // Copyright (c) 2013, 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_INTERMEDIATE_LANGUAGE_H_ | 5 #ifndef VM_INTERMEDIATE_LANGUAGE_H_ |
6 #define VM_INTERMEDIATE_LANGUAGE_H_ | 6 #define VM_INTERMEDIATE_LANGUAGE_H_ |
7 | 7 |
8 #include "vm/allocation.h" | 8 #include "vm/allocation.h" |
9 #include "vm/ast.h" | 9 #include "vm/ast.h" |
10 #include "vm/growable_array.h" | 10 #include "vm/growable_array.h" |
(...skipping 3656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3667 intptr_t token_pos() const { return token_pos_; } | 3667 intptr_t token_pos() const { return token_pos_; } |
3668 | 3668 |
3669 virtual CompileType ComputeType() const; | 3669 virtual CompileType ComputeType() const; |
3670 // Issues a static call to Dart code whihc calls toString on objects. | 3670 // Issues a static call to Dart code whihc calls toString on objects. |
3671 virtual EffectSet Effects() const { return EffectSet::All(); } | 3671 virtual EffectSet Effects() const { return EffectSet::All(); } |
3672 virtual bool CanDeoptimize() const { return true; } | 3672 virtual bool CanDeoptimize() const { return true; } |
3673 virtual bool MayThrow() const { return true; } | 3673 virtual bool MayThrow() const { return true; } |
3674 | 3674 |
3675 const Function& CallFunction() const; | 3675 const Function& CallFunction() const; |
3676 | 3676 |
| 3677 virtual Definition* Canonicalize(FlowGraph* flow_graph); |
| 3678 |
3677 DECLARE_INSTRUCTION(StringInterpolate) | 3679 DECLARE_INSTRUCTION(StringInterpolate) |
3678 | 3680 |
3679 private: | 3681 private: |
3680 const intptr_t token_pos_; | 3682 const intptr_t token_pos_; |
3681 Function& function_; | 3683 Function& function_; |
3682 | 3684 |
3683 DISALLOW_COPY_AND_ASSIGN(StringInterpolateInstr); | 3685 DISALLOW_COPY_AND_ASSIGN(StringInterpolateInstr); |
3684 }; | 3686 }; |
3685 | 3687 |
3686 | 3688 |
(...skipping 3172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
6859 ForwardInstructionIterator* current_iterator_; | 6861 ForwardInstructionIterator* current_iterator_; |
6860 | 6862 |
6861 private: | 6863 private: |
6862 DISALLOW_COPY_AND_ASSIGN(FlowGraphVisitor); | 6864 DISALLOW_COPY_AND_ASSIGN(FlowGraphVisitor); |
6863 }; | 6865 }; |
6864 | 6866 |
6865 | 6867 |
6866 } // namespace dart | 6868 } // namespace dart |
6867 | 6869 |
6868 #endif // VM_INTERMEDIATE_LANGUAGE_H_ | 6870 #endif // VM_INTERMEDIATE_LANGUAGE_H_ |
OLD | NEW |