| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 650 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 661 } | 661 } |
| 662 | 662 |
| 663 Zone* zone() const { return info_->zone(); } | 663 Zone* zone() const { return info_->zone(); } |
| 664 | 664 |
| 665 Handle<Code> Codegen(); | 665 Handle<Code> Codegen(); |
| 666 | 666 |
| 667 void set_allocated_double_registers(BitVector* allocated_registers); | 667 void set_allocated_double_registers(BitVector* allocated_registers); |
| 668 BitVector* allocated_double_registers() { | 668 BitVector* allocated_double_registers() { |
| 669 return allocated_double_registers_; | 669 return allocated_double_registers_; |
| 670 } | 670 } |
| 671 RegList safepoints_registers() { return safepoints_registers_; } |
| 672 void set_safepoints_registers(RegList safepoints_registers) { |
| 673 safepoints_registers_ = safepoints_registers; |
| 674 } |
| 675 void add_safepoints_registers(RegList safepoints_registers) { |
| 676 safepoints_registers_ |= safepoints_registers; |
| 677 } |
| 678 RegList safepoints_double_registers() { return safepoints_double_registers_; } |
| 679 void set_safepoints_double_registers(RegList safepoints_double_registers) { |
| 680 safepoints_double_registers_ = safepoints_double_registers; |
| 681 } |
| 682 void add_safepoints_double_registers(RegList safepoints_double_registers) { |
| 683 safepoints_double_registers_ |= safepoints_double_registers; |
| 684 } |
| 671 | 685 |
| 672 protected: | 686 protected: |
| 673 LChunk(CompilationInfo* info, HGraph* graph); | 687 LChunk(CompilationInfo* info, HGraph* graph); |
| 674 | 688 |
| 675 int spill_slot_count_; | 689 int spill_slot_count_; |
| 676 | 690 |
| 677 private: | 691 private: |
| 678 CompilationInfo* info_; | 692 CompilationInfo* info_; |
| 679 HGraph* const graph_; | 693 HGraph* const graph_; |
| 680 BitVector* allocated_double_registers_; | 694 BitVector* allocated_double_registers_; |
| 695 RegList safepoints_registers_; |
| 696 RegList safepoints_double_registers_; |
| 681 ZoneList<LInstruction*> instructions_; | 697 ZoneList<LInstruction*> instructions_; |
| 682 ZoneList<LPointerMap*> pointer_maps_; | 698 ZoneList<LPointerMap*> pointer_maps_; |
| 683 ZoneList<Handle<JSFunction> > inlined_closures_; | 699 ZoneList<Handle<JSFunction> > inlined_closures_; |
| 684 }; | 700 }; |
| 685 | 701 |
| 686 | 702 |
| 687 class LChunkBuilderBase BASE_EMBEDDED { | 703 class LChunkBuilderBase BASE_EMBEDDED { |
| 688 public: | 704 public: |
| 689 explicit LChunkBuilderBase(Zone* zone) | 705 explicit LChunkBuilderBase(Zone* zone) |
| 690 : argument_count_(0), | 706 : argument_count_(0), |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 731 private: | 747 private: |
| 732 LChunk* chunk_; | 748 LChunk* chunk_; |
| 733 | 749 |
| 734 DISALLOW_COPY_AND_ASSIGN(LPhase); | 750 DISALLOW_COPY_AND_ASSIGN(LPhase); |
| 735 }; | 751 }; |
| 736 | 752 |
| 737 | 753 |
| 738 } } // namespace v8::internal | 754 } } // namespace v8::internal |
| 739 | 755 |
| 740 #endif // V8_LITHIUM_H_ | 756 #endif // V8_LITHIUM_H_ |
| OLD | NEW |