MIPS: Added old data space allocation infrastructure for pretenuring.
Port r14843 (2d8faca3) BUG= Review URL: https://codereview.chromium.org/16155006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@14864 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
041257e549
commit
c5d0215e08
@ -5223,7 +5223,10 @@ void LCodeGen::DoAllocate(LAllocate* instr) {
|
||||
flags = static_cast<AllocationFlags>(flags | DOUBLE_ALIGNMENT);
|
||||
}
|
||||
if (instr->hydrogen()->CanAllocateInOldPointerSpace()) {
|
||||
ASSERT(!instr->hydrogen()->CanAllocateInOldDataSpace());
|
||||
flags = static_cast<AllocationFlags>(flags | PRETENURE_OLD_POINTER_SPACE);
|
||||
} else if (instr->hydrogen()->CanAllocateInOldDataSpace()) {
|
||||
flags = static_cast<AllocationFlags>(flags | PRETENURE_OLD_DATA_SPACE);
|
||||
}
|
||||
if (instr->size()->IsConstantOperand()) {
|
||||
int32_t size = ToInteger32(LConstantOperand::cast(instr->size()));
|
||||
@ -5262,11 +5265,12 @@ void LCodeGen::DoDeferredAllocate(LAllocate* instr) {
|
||||
}
|
||||
|
||||
if (instr->hydrogen()->CanAllocateInOldPointerSpace()) {
|
||||
CallRuntimeFromDeferred(
|
||||
Runtime::kAllocateInOldPointerSpace, 1, instr);
|
||||
ASSERT(!instr->hydrogen()->CanAllocateInOldDataSpace());
|
||||
CallRuntimeFromDeferred(Runtime::kAllocateInOldPointerSpace, 1, instr);
|
||||
} else if (instr->hydrogen()->CanAllocateInOldDataSpace()) {
|
||||
CallRuntimeFromDeferred(Runtime::kAllocateInOldDataSpace, 1, instr);
|
||||
} else {
|
||||
CallRuntimeFromDeferred(
|
||||
Runtime::kAllocateInNewSpace, 1, instr);
|
||||
CallRuntimeFromDeferred(Runtime::kAllocateInNewSpace, 1, instr);
|
||||
}
|
||||
__ StoreToSafepointRegisterSlot(v0, result);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user