| 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_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 614 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 625 | 625 |
| 626 | 626 |
| 627 class EqualityCompareComp : public ComparisonComp { | 627 class EqualityCompareComp : public ComparisonComp { |
| 628 public: | 628 public: |
| 629 EqualityCompareComp(intptr_t token_pos, | 629 EqualityCompareComp(intptr_t token_pos, |
| 630 intptr_t try_index, | 630 intptr_t try_index, |
| 631 Value* left, | 631 Value* left, |
| 632 Value* right) | 632 Value* right) |
| 633 : ComparisonComp(left, right), | 633 : ComparisonComp(left, right), |
| 634 token_pos_(token_pos), | 634 token_pos_(token_pos), |
| 635 try_index_(try_index) { | 635 try_index_(try_index), |
| 636 receiver_class_id_(kObject) { |
| 636 } | 637 } |
| 637 | 638 |
| 638 DECLARE_COMPUTATION(EqualityCompare) | 639 DECLARE_COMPUTATION(EqualityCompare) |
| 639 | 640 |
| 640 intptr_t token_pos() const { return token_pos_; } | 641 intptr_t token_pos() const { return token_pos_; } |
| 641 intptr_t try_index() const { return try_index_; } | 642 intptr_t try_index() const { return try_index_; } |
| 643 |
| 644 void set_receiver_class_id(intptr_t value) { receiver_class_id_ = value; } |
| 645 intptr_t receiver_class_id() const { return receiver_class_id_; } |
| 642 virtual void PrintOperandsTo(BufferFormatter* f) const; | 646 virtual void PrintOperandsTo(BufferFormatter* f) const; |
| 643 | 647 |
| 644 private: | 648 private: |
| 645 const intptr_t token_pos_; | 649 const intptr_t token_pos_; |
| 646 const intptr_t try_index_; | 650 const intptr_t try_index_; |
| 651 intptr_t receiver_class_id_; // Set by optimizer. |
| 647 | 652 |
| 648 DISALLOW_COPY_AND_ASSIGN(EqualityCompareComp); | 653 DISALLOW_COPY_AND_ASSIGN(EqualityCompareComp); |
| 649 }; | 654 }; |
| 650 | 655 |
| 651 | 656 |
| 652 class RelationalOpComp : public ComparisonComp { | 657 class RelationalOpComp : public ComparisonComp { |
| 653 public: | 658 public: |
| 654 RelationalOpComp(intptr_t token_pos, | 659 RelationalOpComp(intptr_t token_pos, |
| 655 intptr_t try_index, | 660 intptr_t try_index, |
| 656 Token::Kind kind, | 661 Token::Kind kind, |
| (...skipping 1827 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2484 const GrowableArray<BlockEntryInstr*>& block_order_; | 2489 const GrowableArray<BlockEntryInstr*>& block_order_; |
| 2485 | 2490 |
| 2486 private: | 2491 private: |
| 2487 DISALLOW_COPY_AND_ASSIGN(FlowGraphVisitor); | 2492 DISALLOW_COPY_AND_ASSIGN(FlowGraphVisitor); |
| 2488 }; | 2493 }; |
| 2489 | 2494 |
| 2490 | 2495 |
| 2491 } // namespace dart | 2496 } // namespace dart |
| 2492 | 2497 |
| 2493 #endif // VM_INTERMEDIATE_LANGUAGE_H_ | 2498 #endif // VM_INTERMEDIATE_LANGUAGE_H_ |
| OLD | NEW |