| Index: src/ia32/stub-cache-ia32.cc
|
| diff --git a/src/ia32/stub-cache-ia32.cc b/src/ia32/stub-cache-ia32.cc
|
| index 7a76e1474209f95b281fed9c242cc438233cad59..eb183948be6afbcdb1a5f0edbaf8f7cc3864c204 100644
|
| --- a/src/ia32/stub-cache-ia32.cc
|
| +++ b/src/ia32/stub-cache-ia32.cc
|
| @@ -807,63 +807,6 @@ void NamedStoreHandlerCompiler::FrontendFooter(Handle<Name> name, Label* miss) {
|
| }
|
|
|
|
|
| -Register NamedLoadHandlerCompiler::CallbackFrontend(Register object_reg,
|
| - Handle<Name> name,
|
| - Handle<Object> callback) {
|
| - Label miss;
|
| -
|
| - Register reg = FrontendHeader(object_reg, name, &miss);
|
| -
|
| - if (!holder()->HasFastProperties()) {
|
| - DCHECK(!holder()->IsGlobalObject());
|
| - DCHECK(!reg.is(scratch2()));
|
| - DCHECK(!reg.is(scratch3()));
|
| - Register dictionary = scratch1();
|
| - bool must_preserve_dictionary_reg = reg.is(dictionary);
|
| -
|
| - // Load the properties dictionary.
|
| - if (must_preserve_dictionary_reg) {
|
| - __ push(dictionary);
|
| - }
|
| - __ mov(dictionary, FieldOperand(reg, JSObject::kPropertiesOffset));
|
| -
|
| - // Probe the dictionary.
|
| - Label probe_done, pop_and_miss;
|
| - NameDictionaryLookupStub::GeneratePositiveLookup(masm(),
|
| - &pop_and_miss,
|
| - &probe_done,
|
| - dictionary,
|
| - this->name(),
|
| - scratch2(),
|
| - scratch3());
|
| - __ bind(&pop_and_miss);
|
| - if (must_preserve_dictionary_reg) {
|
| - __ pop(dictionary);
|
| - }
|
| - __ jmp(&miss);
|
| - __ bind(&probe_done);
|
| -
|
| - // If probing finds an entry in the dictionary, scratch2 contains the
|
| - // index into the dictionary. Check that the value is the callback.
|
| - Register index = scratch2();
|
| - const int kElementsStartOffset =
|
| - NameDictionary::kHeaderSize +
|
| - NameDictionary::kElementsStartIndex * kPointerSize;
|
| - const int kValueOffset = kElementsStartOffset + kPointerSize;
|
| - __ mov(scratch3(),
|
| - Operand(dictionary, index, times_4, kValueOffset - kHeapObjectTag));
|
| - if (must_preserve_dictionary_reg) {
|
| - __ pop(dictionary);
|
| - }
|
| - __ cmp(scratch3(), callback);
|
| - __ j(not_equal, &miss);
|
| - }
|
| -
|
| - FrontendFooter(name, &miss);
|
| - return reg;
|
| -}
|
| -
|
| -
|
| void NamedLoadHandlerCompiler::GenerateLoadField(
|
| Register reg, FieldIndex field, Representation representation) {
|
| if (!reg.is(receiver())) __ mov(receiver(), reg);
|
|
|