X64: Activate Probes for Megamorphic StoreIC on 64-bit platform.
Review URL: http://codereview.chromium.org/174609 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2777 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
7331301703
commit
231f0b9656
@ -918,6 +918,21 @@ void StoreIC::GenerateExtendStorage(MacroAssembler* masm) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
|
void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
|
||||||
|
// ----------- S t a t e -------------
|
||||||
|
// -- rax : value
|
||||||
|
// -- rcx : name
|
||||||
|
// -- rsp[0] : return address
|
||||||
|
// -- rsp[8] : receiver
|
||||||
|
// -----------------------------------
|
||||||
|
|
||||||
|
// Get the receiver from the stack and probe the stub cache.
|
||||||
|
__ movq(rdx, Operand(rsp, kPointerSize));
|
||||||
|
Code::Flags flags = Code::ComputeFlags(Code::STORE_IC,
|
||||||
|
NOT_IN_LOOP,
|
||||||
|
MONOMORPHIC);
|
||||||
|
StubCache::GenerateProbe(masm, flags, rdx, rcx, rbx, no_reg);
|
||||||
|
|
||||||
|
// Cache miss: Jump to runtime.
|
||||||
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss)));
|
Generate(masm, ExternalReference(IC_Utility(kStoreIC_Miss)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user