Port the ic part
BUG= R=rossberg@chromium.org Review URL: https://codereview.chromium.org/354173002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22066 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
This commit is contained in:
parent
8945c69855
commit
a80b14ab93
@ -873,7 +873,7 @@ void KeyedStoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
__ Push(r2, r1, r0);
|
||||
|
||||
__ mov(r0, Operand(Smi::FromInt(strict_mode))); // Strict mode.
|
||||
__ Push(r1, r0);
|
||||
__ Push(r0);
|
||||
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
@ -1213,12 +1213,11 @@ void StoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
|
||||
__ Push(r1, r2, r0);
|
||||
|
||||
__ mov(r1, Operand(Smi::FromInt(NONE))); // PropertyAttributes
|
||||
__ mov(r0, Operand(Smi::FromInt(strict_mode)));
|
||||
__ Push(r1, r0);
|
||||
__ Push(r0);
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -911,12 +911,11 @@ void KeyedStoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
// Push receiver, key and value for runtime call.
|
||||
__ Push(x2, x1, x0);
|
||||
|
||||
// Push PropertyAttributes(NONE) and strict_mode for runtime call.
|
||||
STATIC_ASSERT(NONE == 0);
|
||||
// Push strict_mode for runtime call.
|
||||
__ Mov(x10, Smi::FromInt(strict_mode));
|
||||
__ Push(xzr, x10);
|
||||
__ Push(x10);
|
||||
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
@ -1258,12 +1257,11 @@ void StoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
|
||||
__ Push(x1, x2, x0);
|
||||
|
||||
__ Mov(x11, Smi::FromInt(NONE)); // PropertyAttributes
|
||||
__ Mov(x10, Smi::FromInt(strict_mode));
|
||||
__ Push(x11, x10);
|
||||
__ Push(x10);
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -795,11 +795,10 @@ void KeyedStoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
|
||||
// Push receiver, key and value for runtime call.
|
||||
__ Push(a2, a1, a0);
|
||||
__ li(a1, Operand(Smi::FromInt(NONE))); // PropertyAttributes.
|
||||
__ li(a0, Operand(Smi::FromInt(strict_mode))); // Strict mode.
|
||||
__ Push(a1, a0);
|
||||
__ Push(a0);
|
||||
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
@ -1233,12 +1232,11 @@ void StoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
|
||||
__ Push(a1, a2, a0);
|
||||
|
||||
__ li(a1, Operand(Smi::FromInt(NONE))); // PropertyAttributes.
|
||||
__ li(a0, Operand(Smi::FromInt(strict_mode)));
|
||||
__ Push(a1, a0);
|
||||
__ Push(a0);
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1148,12 +1148,11 @@ void StoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
__ Push(rdx);
|
||||
__ Push(rcx);
|
||||
__ Push(rax);
|
||||
__ Push(Smi::FromInt(NONE)); // PropertyAttributes
|
||||
__ Push(Smi::FromInt(strict_mode));
|
||||
__ PushReturnAddressFrom(rbx);
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
@ -1170,12 +1169,11 @@ void KeyedStoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
__ Push(rdx); // receiver
|
||||
__ Push(rcx); // key
|
||||
__ Push(rax); // value
|
||||
__ Push(Smi::FromInt(NONE)); // PropertyAttributes
|
||||
__ Push(Smi::FromInt(strict_mode)); // Strict mode.
|
||||
__ PushReturnAddressFrom(rbx);
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -1132,12 +1132,11 @@ void StoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
__ push(edx);
|
||||
__ push(ecx);
|
||||
__ push(eax);
|
||||
__ push(Immediate(Smi::FromInt(NONE))); // PropertyAttributes
|
||||
__ push(Immediate(Smi::FromInt(strict_mode)));
|
||||
__ push(ebx); // return address
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
@ -1154,12 +1153,11 @@ void KeyedStoreIC::GenerateRuntimeSetProperty(MacroAssembler* masm,
|
||||
__ push(edx);
|
||||
__ push(ecx);
|
||||
__ push(eax);
|
||||
__ push(Immediate(Smi::FromInt(NONE))); // PropertyAttributes
|
||||
__ push(Immediate(Smi::FromInt(strict_mode))); // Strict mode.
|
||||
__ push(ebx); // return address
|
||||
|
||||
// Do tail-call to runtime routine.
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 5, 1);
|
||||
__ TailCallRuntime(Runtime::kSetProperty, 4, 1);
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user