Index: src/x64/full-codegen-x64.cc |
diff --git a/src/x64/full-codegen-x64.cc b/src/x64/full-codegen-x64.cc |
index f0297a6fbb21b78fd434fc6620b52b357ea9cbfd..746d18c5d156bf0c0a1d86f8ea0d3903fea4f58d 100644 |
--- a/src/x64/full-codegen-x64.cc |
+++ b/src/x64/full-codegen-x64.cc |
@@ -1089,8 +1089,7 @@ void FullCodeGenerator::EmitLoadGlobalSlotCheckExtensions( |
__ j(not_equal, slow); |
} |
// Load next context in chain. |
- __ movq(temp, ContextOperand(context, Context::CLOSURE_INDEX)); |
- __ movq(temp, FieldOperand(temp, JSFunction::kContextOffset)); |
+ __ movq(temp, ContextOperand(context, Context::PREVIOUS_INDEX)); |
// Walk the rest of the chain without clobbering rsi. |
context = temp; |
} |
@@ -1118,8 +1117,7 @@ void FullCodeGenerator::EmitLoadGlobalSlotCheckExtensions( |
__ cmpq(ContextOperand(temp, Context::EXTENSION_INDEX), Immediate(0)); |
__ j(not_equal, slow); |
// Load next context in chain. |
- __ movq(temp, ContextOperand(temp, Context::CLOSURE_INDEX)); |
- __ movq(temp, FieldOperand(temp, JSFunction::kContextOffset)); |
+ __ movq(temp, ContextOperand(temp, Context::PREVIOUS_INDEX)); |
__ jmp(&next); |
__ bind(&fast); |
} |
@@ -1151,8 +1149,7 @@ MemOperand FullCodeGenerator::ContextSlotOperandCheckExtensions( |
Immediate(0)); |
__ j(not_equal, slow); |
} |
- __ movq(temp, ContextOperand(context, Context::CLOSURE_INDEX)); |
- __ movq(temp, FieldOperand(temp, JSFunction::kContextOffset)); |
+ __ movq(temp, ContextOperand(context, Context::PREVIOUS_INDEX)); |
// Walk the rest of the chain without clobbering rsi. |
context = temp; |
} |