| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "v8.h" | 5 #include "v8.h" |
| 6 | 6 |
| 7 #if V8_TARGET_ARCH_X64 | 7 #if V8_TARGET_ARCH_X64 |
| 8 | 8 |
| 9 #include "macro-assembler.h" | 9 #include "macro-assembler.h" |
| 10 #include "serialize.h" | 10 #include "serialize.h" |
| (...skipping 343 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 354 // Clear the buffer in debug mode. Use 'int3' instructions to make | 354 // Clear the buffer in debug mode. Use 'int3' instructions to make |
| 355 // sure to get into problems if we ever run uninitialized code. | 355 // sure to get into problems if we ever run uninitialized code. |
| 356 #ifdef DEBUG | 356 #ifdef DEBUG |
| 357 memset(desc.buffer, 0xCC, desc.buffer_size); | 357 memset(desc.buffer, 0xCC, desc.buffer_size); |
| 358 #endif | 358 #endif |
| 359 | 359 |
| 360 // Copy the data. | 360 // Copy the data. |
| 361 intptr_t pc_delta = desc.buffer - buffer_; | 361 intptr_t pc_delta = desc.buffer - buffer_; |
| 362 intptr_t rc_delta = (desc.buffer + desc.buffer_size) - | 362 intptr_t rc_delta = (desc.buffer + desc.buffer_size) - |
| 363 (buffer_ + buffer_size_); | 363 (buffer_ + buffer_size_); |
| 364 OS::MemMove(desc.buffer, buffer_, desc.instr_size); | 364 MemMove(desc.buffer, buffer_, desc.instr_size); |
| 365 OS::MemMove(rc_delta + reloc_info_writer.pos(), | 365 MemMove(rc_delta + reloc_info_writer.pos(), reloc_info_writer.pos(), |
| 366 reloc_info_writer.pos(), desc.reloc_size); | 366 desc.reloc_size); |
| 367 | 367 |
| 368 // Switch buffers. | 368 // Switch buffers. |
| 369 if (isolate() != NULL && | 369 if (isolate() != NULL && |
| 370 isolate()->assembler_spare_buffer() == NULL && | 370 isolate()->assembler_spare_buffer() == NULL && |
| 371 buffer_size_ == kMinimalBufferSize) { | 371 buffer_size_ == kMinimalBufferSize) { |
| 372 isolate()->set_assembler_spare_buffer(buffer_); | 372 isolate()->set_assembler_spare_buffer(buffer_); |
| 373 } else { | 373 } else { |
| 374 DeleteArray(buffer_); | 374 DeleteArray(buffer_); |
| 375 } | 375 } |
| 376 buffer_ = desc.buffer; | 376 buffer_ = desc.buffer; |
| (...skipping 2593 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2970 | 2970 |
| 2971 | 2971 |
| 2972 bool RelocInfo::IsInConstantPool() { | 2972 bool RelocInfo::IsInConstantPool() { |
| 2973 return false; | 2973 return false; |
| 2974 } | 2974 } |
| 2975 | 2975 |
| 2976 | 2976 |
| 2977 } } // namespace v8::internal | 2977 } } // namespace v8::internal |
| 2978 | 2978 |
| 2979 #endif // V8_TARGET_ARCH_X64 | 2979 #endif // V8_TARGET_ARCH_X64 |
| OLD | NEW |