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 794 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
805 void WriteRecordedPositions(); | 805 void WriteRecordedPositions(); |
806 | 806 |
807 // Writes a doubleword of data in the code stream. | 807 // Writes a doubleword of data in the code stream. |
808 // Used for inline tables, e.g., jump-tables. | 808 // Used for inline tables, e.g., jump-tables. |
809 // void dd(uint32_t data); | 809 // void dd(uint32_t data); |
810 | 810 |
811 // Writes a quadword of data in the code stream. | 811 // Writes a quadword of data in the code stream. |
812 // Used for inline tables, e.g., jump-tables. | 812 // Used for inline tables, e.g., jump-tables. |
813 // void dd(uint64_t data, RelocInfo::Mode reloc_info); | 813 // void dd(uint64_t data, RelocInfo::Mode reloc_info); |
814 | 814 |
815 // Writes the absolute address of a bound label at the given position in | |
816 // the generated code. That positions should have the relocation mode | |
817 // internal_reference! | |
818 void WriteInternalReference(int position, const Label& bound_label); | |
819 | |
820 int pc_offset() const { return pc_ - buffer_; } | 815 int pc_offset() const { return pc_ - buffer_; } |
821 int current_statement_position() const { return current_statement_position_; } | 816 int current_statement_position() const { return current_statement_position_; } |
822 int current_position() const { return current_position_; } | 817 int current_position() const { return current_position_; } |
823 | 818 |
824 // Check if there is less than kGap bytes available in the buffer. | 819 // Check if there is less than kGap bytes available in the buffer. |
825 // If this is the case, we need to grow the buffer before emitting | 820 // If this is the case, we need to grow the buffer before emitting |
826 // an instruction or relocation information. | 821 // an instruction or relocation information. |
827 inline bool overflow() const { return pc_ >= reloc_info_writer.pos() - kGap; } | 822 inline bool overflow() const { return pc_ >= reloc_info_writer.pos() - kGap; } |
828 | 823 |
829 // Get the number of bytes available in the buffer. | 824 // Get the number of bytes available in the buffer. |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1035 private: | 1030 private: |
1036 Assembler* assembler_; | 1031 Assembler* assembler_; |
1037 #ifdef DEBUG | 1032 #ifdef DEBUG |
1038 int space_before_; | 1033 int space_before_; |
1039 #endif | 1034 #endif |
1040 }; | 1035 }; |
1041 | 1036 |
1042 } } // namespace v8::internal | 1037 } } // namespace v8::internal |
1043 | 1038 |
1044 #endif // V8_X64_ASSEMBLER_X64_H_ | 1039 #endif // V8_X64_ASSEMBLER_X64_H_ |
OLD | NEW |