| OLD | NEW |
| 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. | 1 // Copyright (c) 1994-2006 Sun Microsystems Inc. |
| 2 // All Rights Reserved. | 2 // All Rights Reserved. |
| 3 // | 3 // |
| 4 // Redistribution and use in source and binary forms, with or without | 4 // Redistribution and use in source and binary forms, with or without |
| 5 // modification, are permitted provided that the following conditions are | 5 // modification, are permitted provided that the following conditions are |
| 6 // met: | 6 // met: |
| 7 // | 7 // |
| 8 // - Redistributions of source code must retain the above copyright notice, | 8 // - Redistributions of source code must retain the above copyright notice, |
| 9 // this list of conditions and the following disclaimer. | 9 // this list of conditions and the following disclaimer. |
| 10 // | 10 // |
| (...skipping 709 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 720 // True if the assembler owns the buffer, false if buffer is external. | 720 // True if the assembler owns the buffer, false if buffer is external. |
| 721 bool own_buffer_; | 721 bool own_buffer_; |
| 722 | 722 |
| 723 // code generation | 723 // code generation |
| 724 byte* pc_; // the program counter; moves forward | 724 byte* pc_; // the program counter; moves forward |
| 725 RelocInfoWriter reloc_info_writer; | 725 RelocInfoWriter reloc_info_writer; |
| 726 | 726 |
| 727 // push-pop elimination | 727 // push-pop elimination |
| 728 byte* last_pc_; | 728 byte* last_pc_; |
| 729 | 729 |
| 730 // Jump-to-jump elimination: | |
| 731 // The last label to be bound to _binding_pos, if unbound. | |
| 732 Label unbound_label_; | |
| 733 // The position to which _unbound_label has to be bound, if present. | |
| 734 int binding_pos_; | |
| 735 // The position before which jumps cannot be eliminated. | |
| 736 int last_bound_pos_; | |
| 737 | |
| 738 // source position information | 730 // source position information |
| 739 int last_position_; | 731 int last_position_; |
| 740 int last_statement_position_; | 732 int last_statement_position_; |
| 741 | 733 |
| 742 byte* addr_at(int pos) { return buffer_ + pos; } | 734 byte* addr_at(int pos) { return buffer_ + pos; } |
| 743 byte byte_at(int pos) { return buffer_[pos]; } | 735 byte byte_at(int pos) { return buffer_[pos]; } |
| 744 uint32_t long_at(int pos) { | 736 uint32_t long_at(int pos) { |
| 745 return *reinterpret_cast<uint32_t*>(addr_at(pos)); | 737 return *reinterpret_cast<uint32_t*>(addr_at(pos)); |
| 746 } | 738 } |
| 747 void long_at_put(int pos, uint32_t x) { | 739 void long_at_put(int pos, uint32_t x) { |
| (...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 810 private: | 802 private: |
| 811 Assembler* assembler_; | 803 Assembler* assembler_; |
| 812 #ifdef DEBUG | 804 #ifdef DEBUG |
| 813 int space_before_; | 805 int space_before_; |
| 814 #endif | 806 #endif |
| 815 }; | 807 }; |
| 816 | 808 |
| 817 } } // namespace v8::internal | 809 } } // namespace v8::internal |
| 818 | 810 |
| 819 #endif // V8_ASSEMBLER_IA32_H_ | 811 #endif // V8_ASSEMBLER_IA32_H_ |
| OLD | NEW |