Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(51)

Side by Side Diff: src/x64/assembler-x64.cc

Issue 1030353003: Enable constant pool support. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 "src/x64/assembler-x64.h" 5 #include "src/x64/assembler-x64.h"
6 6
7 #include <cstring> 7 #include <cstring>
8 8
9 #if V8_TARGET_ARCH_X64 9 #if V8_TARGET_ARCH_X64
10 10
(...skipping 3485 matching lines...) Expand 10 before | Expand all | Expand 10 after
3496 // Don't record psuedo relocation info for code age sequence mode. 3496 // Don't record psuedo relocation info for code age sequence mode.
3497 return; 3497 return;
3498 } 3498 }
3499 RelocInfo rinfo(pc_, rmode, data, NULL); 3499 RelocInfo rinfo(pc_, rmode, data, NULL);
3500 reloc_info_writer.Write(&rinfo); 3500 reloc_info_writer.Write(&rinfo);
3501 } 3501 }
3502 3502
3503 3503
3504 Handle<ConstantPoolArray> Assembler::NewConstantPool(Isolate* isolate) { 3504 Handle<ConstantPoolArray> Assembler::NewConstantPool(Isolate* isolate) {
3505 // No out-of-line constant pool support. 3505 // No out-of-line constant pool support.
3506 DCHECK(!FLAG_enable_ool_constant_pool); 3506 UNREACHABLE();
3507 return isolate->factory()->empty_constant_pool_array(); 3507 return isolate->factory()->empty_constant_pool_array();
3508 } 3508 }
3509 3509
3510 3510
3511 void Assembler::PopulateConstantPool(ConstantPoolArray* constant_pool) { 3511 void Assembler::PopulateConstantPool(ConstantPoolArray* constant_pool) {
3512 // No out-of-line constant pool support. 3512 // No out-of-line constant pool support.
3513 DCHECK(!FLAG_enable_ool_constant_pool); 3513 UNREACHABLE();
3514 return; 3514 return;
3515 } 3515 }
3516 3516
3517 3517
3518 const int RelocInfo::kApplyMask = RelocInfo::kCodeTargetMask | 3518 const int RelocInfo::kApplyMask = RelocInfo::kCodeTargetMask |
3519 1 << RelocInfo::RUNTIME_ENTRY | 3519 1 << RelocInfo::RUNTIME_ENTRY |
3520 1 << RelocInfo::INTERNAL_REFERENCE | 3520 1 << RelocInfo::INTERNAL_REFERENCE |
3521 1 << RelocInfo::CODE_AGE_SEQUENCE; 3521 1 << RelocInfo::CODE_AGE_SEQUENCE;
3522 3522
3523 3523
3524 bool RelocInfo::IsCodedSpecially() { 3524 bool RelocInfo::IsCodedSpecially() {
3525 // The deserializer needs to know whether a pointer is specially coded. Being 3525 // The deserializer needs to know whether a pointer is specially coded. Being
3526 // specially coded on x64 means that it is a relative 32 bit address, as used 3526 // specially coded on x64 means that it is a relative 32 bit address, as used
3527 // by branch instructions. 3527 // by branch instructions.
3528 return (1 << rmode_) & kApplyMask; 3528 return (1 << rmode_) & kApplyMask;
3529 } 3529 }
3530 3530
3531 3531
3532 bool RelocInfo::IsInConstantPool() { 3532 bool RelocInfo::IsInConstantPool() {
3533 return false; 3533 return false;
3534 } 3534 }
3535 3535
3536 3536
3537 } } // namespace v8::internal 3537 } } // namespace v8::internal
3538 3538
3539 #endif // V8_TARGET_ARCH_X64 3539 #endif // V8_TARGET_ARCH_X64
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698