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 1113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1124 void RecordJSReturn(); | 1124 void RecordJSReturn(); |
1125 | 1125 |
1126 // Record a comment relocation entry that can be used by a disassembler. | 1126 // Record a comment relocation entry that can be used by a disassembler. |
1127 // Use --debug_code to enable. | 1127 // Use --debug_code to enable. |
1128 void RecordComment(const char* msg); | 1128 void RecordComment(const char* msg); |
1129 | 1129 |
1130 void RecordPosition(int pos); | 1130 void RecordPosition(int pos); |
1131 void RecordStatementPosition(int pos); | 1131 void RecordStatementPosition(int pos); |
1132 void WriteRecordedPositions(); | 1132 void WriteRecordedPositions(); |
1133 | 1133 |
1134 int pc_offset() const { return pc_ - buffer_; } | 1134 int pc_offset() const { return static_cast<int>(pc_ - buffer_); } |
1135 int current_statement_position() const { return current_statement_position_; } | 1135 int current_statement_position() const { return current_statement_position_; } |
1136 int current_position() const { return current_position_; } | 1136 int current_position() const { return current_position_; } |
1137 | 1137 |
1138 // Check if there is less than kGap bytes available in the buffer. | 1138 // Check if there is less than kGap bytes available in the buffer. |
1139 // If this is the case, we need to grow the buffer before emitting | 1139 // If this is the case, we need to grow the buffer before emitting |
1140 // an instruction or relocation information. | 1140 // an instruction or relocation information. |
1141 inline bool buffer_overflow() const { | 1141 inline bool buffer_overflow() const { |
1142 return pc_ >= reloc_info_writer.pos() - kGap; | 1142 return pc_ >= reloc_info_writer.pos() - kGap; |
1143 } | 1143 } |
1144 | 1144 |
1145 // Get the number of bytes available in the buffer. | 1145 // Get the number of bytes available in the buffer. |
1146 inline int available_space() const { return reloc_info_writer.pos() - pc_; } | 1146 inline int available_space() const { |
| 1147 return static_cast<int>(reloc_info_writer.pos() - pc_); |
| 1148 } |
1147 | 1149 |
1148 // Avoid overflows for displacements etc. | 1150 // Avoid overflows for displacements etc. |
1149 static const int kMaximalBufferSize = 512*MB; | 1151 static const int kMaximalBufferSize = 512*MB; |
1150 static const int kMinimalBufferSize = 4*KB; | 1152 static const int kMinimalBufferSize = 4*KB; |
1151 | 1153 |
1152 protected: | 1154 protected: |
1153 // void movsd(XMMRegister dst, const Operand& src); | 1155 // void movsd(XMMRegister dst, const Operand& src); |
1154 // void movsd(const Operand& dst, XMMRegister src); | 1156 // void movsd(const Operand& dst, XMMRegister src); |
1155 | 1157 |
1156 // void emit_sse_operand(XMMRegister reg, const Operand& adr); | 1158 // void emit_sse_operand(XMMRegister reg, const Operand& adr); |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1387 private: | 1389 private: |
1388 Assembler* assembler_; | 1390 Assembler* assembler_; |
1389 #ifdef DEBUG | 1391 #ifdef DEBUG |
1390 int space_before_; | 1392 int space_before_; |
1391 #endif | 1393 #endif |
1392 }; | 1394 }; |
1393 | 1395 |
1394 } } // namespace v8::internal | 1396 } } // namespace v8::internal |
1395 | 1397 |
1396 #endif // V8_X64_ASSEMBLER_X64_H_ | 1398 #endif // V8_X64_ASSEMBLER_X64_H_ |
OLD | NEW |