X87: Cleanup: Remove unncessary leave_frame parameter from stub cache.
port fe432e1ace
(r30250).
original commit message:
BUG=
Review URL: https://codereview.chromium.org/1303973004
Cr-Commit-Position: refs/heads/master@{#30296}
This commit is contained in:
parent
365fd7bc35
commit
597cfc6ea8
@ -348,7 +348,7 @@ void KeyedLoadIC::GenerateMegamorphic(MacroAssembler* masm,
|
||||
Code::Flags flags = Code::RemoveTypeAndHolderFromFlags(
|
||||
Code::ComputeHandlerFlags(Code::LOAD_IC));
|
||||
masm->isolate()->stub_cache()->GenerateProbe(masm, Code::KEYED_LOAD_IC, flags,
|
||||
false, receiver, key, ebx, edi);
|
||||
receiver, key, ebx, edi);
|
||||
|
||||
__ pop(LoadWithVectorDescriptor::VectorRegister());
|
||||
__ pop(LoadDescriptor::SlotRegister());
|
||||
@ -576,8 +576,8 @@ void KeyedStoreIC::GenerateMegamorphic(MacroAssembler* masm,
|
||||
|
||||
Code::Flags flags = Code::RemoveTypeAndHolderFromFlags(
|
||||
Code::ComputeHandlerFlags(Code::STORE_IC));
|
||||
masm->isolate()->stub_cache()->GenerateProbe(
|
||||
masm, Code::STORE_IC, flags, false, receiver, key, ebx, no_reg);
|
||||
masm->isolate()->stub_cache()->GenerateProbe(masm, Code::STORE_IC, flags,
|
||||
receiver, key, ebx, no_reg);
|
||||
|
||||
if (FLAG_vector_stores) {
|
||||
__ pop(VectorStoreICDescriptor::VectorRegister());
|
||||
@ -738,7 +738,7 @@ void StoreIC::GenerateMegamorphic(MacroAssembler* masm) {
|
||||
Code::Flags flags = Code::RemoveTypeAndHolderFromFlags(
|
||||
Code::ComputeHandlerFlags(Code::STORE_IC));
|
||||
masm->isolate()->stub_cache()->GenerateProbe(
|
||||
masm, Code::STORE_IC, flags, false, StoreDescriptor::ReceiverRegister(),
|
||||
masm, Code::STORE_IC, flags, StoreDescriptor::ReceiverRegister(),
|
||||
StoreDescriptor::NameRegister(), ebx, no_reg);
|
||||
|
||||
// Cache miss: Jump to runtime.
|
||||
|
@ -16,7 +16,7 @@ namespace internal {
|
||||
|
||||
|
||||
static void ProbeTable(Isolate* isolate, MacroAssembler* masm,
|
||||
Code::Kind ic_kind, Code::Flags flags, bool leave_frame,
|
||||
Code::Kind ic_kind, Code::Flags flags,
|
||||
StubCache::Table table, Register name, Register receiver,
|
||||
// Number of the cache entry pointer-size scaled.
|
||||
Register offset, Register extra) {
|
||||
@ -63,8 +63,6 @@ static void ProbeTable(Isolate* isolate, MacroAssembler* masm,
|
||||
__ pop(LoadDescriptor::SlotRegister());
|
||||
}
|
||||
|
||||
if (leave_frame) __ leave();
|
||||
|
||||
// Jump to the first instruction in the code stub.
|
||||
__ add(extra, Immediate(Code::kHeaderSize - kHeapObjectTag));
|
||||
__ jmp(extra);
|
||||
@ -118,8 +116,6 @@ static void ProbeTable(Isolate* isolate, MacroAssembler* masm,
|
||||
__ pop(slot);
|
||||
}
|
||||
|
||||
if (leave_frame) __ leave();
|
||||
|
||||
// Jump to the first instruction in the code stub.
|
||||
__ add(offset, Immediate(Code::kHeaderSize - kHeapObjectTag));
|
||||
__ jmp(offset);
|
||||
@ -132,10 +128,9 @@ static void ProbeTable(Isolate* isolate, MacroAssembler* masm,
|
||||
|
||||
|
||||
void StubCache::GenerateProbe(MacroAssembler* masm, Code::Kind ic_kind,
|
||||
Code::Flags flags, bool leave_frame,
|
||||
Register receiver, Register name,
|
||||
Register scratch, Register extra, Register extra2,
|
||||
Register extra3) {
|
||||
Code::Flags flags, Register receiver,
|
||||
Register name, Register scratch, Register extra,
|
||||
Register extra2, Register extra3) {
|
||||
Label miss;
|
||||
|
||||
// Assert that code is valid. The multiplying code relies on the entry size
|
||||
@ -178,8 +173,8 @@ void StubCache::GenerateProbe(MacroAssembler* masm, Code::Kind ic_kind,
|
||||
DCHECK(kCacheIndexShift == kPointerSizeLog2);
|
||||
|
||||
// Probe the primary table.
|
||||
ProbeTable(isolate(), masm, ic_kind, flags, leave_frame, kPrimary, name,
|
||||
receiver, offset, extra);
|
||||
ProbeTable(isolate(), masm, ic_kind, flags, kPrimary, name, receiver, offset,
|
||||
extra);
|
||||
|
||||
// Primary miss: Compute hash for secondary probe.
|
||||
__ mov(offset, FieldOperand(name, Name::kHashFieldOffset));
|
||||
@ -191,8 +186,8 @@ void StubCache::GenerateProbe(MacroAssembler* masm, Code::Kind ic_kind,
|
||||
__ and_(offset, (kSecondaryTableSize - 1) << kCacheIndexShift);
|
||||
|
||||
// Probe the secondary table.
|
||||
ProbeTable(isolate(), masm, ic_kind, flags, leave_frame, kSecondary, name,
|
||||
receiver, offset, extra);
|
||||
ProbeTable(isolate(), masm, ic_kind, flags, kSecondary, name, receiver,
|
||||
offset, extra);
|
||||
|
||||
// Cache miss: Fall-through and let caller handle the miss by
|
||||
// entering the runtime system.
|
||||
|
@ -4289,8 +4289,8 @@ void LoadICStub::GenerateImpl(MacroAssembler* masm, bool in_frame) {
|
||||
__ push(vector);
|
||||
Code::Flags code_flags = Code::RemoveTypeAndHolderFromFlags(
|
||||
Code::ComputeHandlerFlags(Code::LOAD_IC));
|
||||
masm->isolate()->stub_cache()->GenerateProbe(
|
||||
masm, Code::LOAD_IC, code_flags, false, receiver, name, vector, scratch);
|
||||
masm->isolate()->stub_cache()->GenerateProbe(masm, Code::LOAD_IC, code_flags,
|
||||
receiver, name, vector, scratch);
|
||||
__ pop(vector);
|
||||
__ pop(slot);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user