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 1171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1182 int relocation_writer_size() { | 1182 int relocation_writer_size() { |
1183 return (buffer_ + buffer_size_) - reloc_info_writer.pos(); | 1183 return (buffer_ + buffer_size_) - reloc_info_writer.pos(); |
1184 } | 1184 } |
1185 | 1185 |
1186 // Avoid overflows for displacements etc. | 1186 // Avoid overflows for displacements etc. |
1187 static const int kMaximalBufferSize = 512*MB; | 1187 static const int kMaximalBufferSize = 512*MB; |
1188 | 1188 |
1189 byte byte_at(int pos) { return buffer_[pos]; } | 1189 byte byte_at(int pos) { return buffer_[pos]; } |
1190 void set_byte_at(int pos, byte value) { buffer_[pos] = value; } | 1190 void set_byte_at(int pos, byte value) { buffer_[pos] = value; } |
1191 | 1191 |
1192 // Allocate a constant pool of the correct size for the generated code. | |
1193 MaybeObject* AllocateConstantPool(Heap* heap); | |
1194 | |
1195 // Generate the constant pool for the generated code. | |
1196 void PopulateConstantPool(ConstantPoolArray* constant_pool); | |
1197 | |
1198 protected: | 1192 protected: |
1199 void emit_sse_operand(XMMRegister reg, const Operand& adr); | 1193 void emit_sse_operand(XMMRegister reg, const Operand& adr); |
1200 void emit_sse_operand(XMMRegister dst, XMMRegister src); | 1194 void emit_sse_operand(XMMRegister dst, XMMRegister src); |
1201 void emit_sse_operand(Register dst, XMMRegister src); | 1195 void emit_sse_operand(Register dst, XMMRegister src); |
1202 void emit_sse_operand(XMMRegister dst, Register src); | 1196 void emit_sse_operand(XMMRegister dst, Register src); |
1203 | 1197 |
1204 byte* addr_at(int pos) { return buffer_ + pos; } | 1198 byte* addr_at(int pos) { return buffer_ + pos; } |
1205 | 1199 |
1206 | 1200 |
1207 private: | 1201 private: |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1288 private: | 1282 private: |
1289 Assembler* assembler_; | 1283 Assembler* assembler_; |
1290 #ifdef DEBUG | 1284 #ifdef DEBUG |
1291 int space_before_; | 1285 int space_before_; |
1292 #endif | 1286 #endif |
1293 }; | 1287 }; |
1294 | 1288 |
1295 } } // namespace v8::internal | 1289 } } // namespace v8::internal |
1296 | 1290 |
1297 #endif // V8_IA32_ASSEMBLER_IA32_H_ | 1291 #endif // V8_IA32_ASSEMBLER_IA32_H_ |
OLD | NEW |