summaryrefslogtreecommitdiff
path: root/deps/v8/src/ic/x64/handler-compiler-x64.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/ic/x64/handler-compiler-x64.cc')
-rw-r--r--deps/v8/src/ic/x64/handler-compiler-x64.cc11
1 files changed, 3 insertions, 8 deletions
diff --git a/deps/v8/src/ic/x64/handler-compiler-x64.cc b/deps/v8/src/ic/x64/handler-compiler-x64.cc
index eeddd55a7b..51bb791712 100644
--- a/deps/v8/src/ic/x64/handler-compiler-x64.cc
+++ b/deps/v8/src/ic/x64/handler-compiler-x64.cc
@@ -69,7 +69,8 @@ void PropertyHandlerCompiler::GenerateDictionaryNegativeLookup(
// Load properties array.
Register properties = scratch0;
- __ movp(properties, FieldOperand(receiver, JSObject::kPropertiesOffset));
+ __ movp(properties,
+ FieldOperand(receiver, JSObject::kPropertiesOrHashOffset));
// Check that the properties array is a dictionary.
__ CompareRoot(FieldOperand(properties, HeapObject::kMapOffset),
@@ -117,9 +118,7 @@ void PropertyHandlerCompiler::GenerateApiAccessorCall(
// Put holder in place.
CallOptimization::HolderLookup holder_lookup;
- int holder_depth = 0;
- optimization.LookupHolderOfExpectedType(receiver_map, &holder_lookup,
- &holder_depth);
+ optimization.LookupHolderOfExpectedType(receiver_map, &holder_lookup);
switch (holder_lookup) {
case CallOptimization::kHolderIsReceiver:
__ Move(holder, receiver);
@@ -127,10 +126,6 @@ void PropertyHandlerCompiler::GenerateApiAccessorCall(
case CallOptimization::kHolderFound:
__ movp(holder, FieldOperand(receiver, HeapObject::kMapOffset));
__ movp(holder, FieldOperand(holder, Map::kPrototypeOffset));
- for (int i = 1; i < holder_depth; i++) {
- __ movp(holder, FieldOperand(holder, HeapObject::kMapOffset));
- __ movp(holder, FieldOperand(holder, Map::kPrototypeOffset));
- }
break;
case CallOptimization::kHolderNotFound:
UNREACHABLE();