Index: src/mips/macro-assembler-mips.cc |
diff --git a/src/mips/macro-assembler-mips.cc b/src/mips/macro-assembler-mips.cc |
index c43d086897e3033a8134be929b34668570298fa6..5c0b901c1f5f3740ceddacadd75147f4b8ce5a61 100644 |
--- a/src/mips/macro-assembler-mips.cc |
+++ b/src/mips/macro-assembler-mips.cc |
@@ -500,85 +500,6 @@ void MacroAssembler::RememberedSetHelper(Register object, // For debug tests. |
// Allocation support. |
-void MacroAssembler::CheckAccessGlobalProxy(Register holder_reg, |
- Register scratch, |
- Label* miss) { |
- Label same_contexts; |
- Register temporary = t8; |
- |
- DCHECK(!holder_reg.is(scratch)); |
- DCHECK(!holder_reg.is(at)); |
- DCHECK(!scratch.is(at)); |
- |
- // Load current lexical context from the active StandardFrame, which |
- // may require crawling past STUB frames. |
- Label load_context; |
- Label has_context; |
- mov(at, fp); |
- bind(&load_context); |
- lw(scratch, MemOperand(at, CommonFrameConstants::kContextOrFrameTypeOffset)); |
- // Passing temporary register, otherwise JumpIfNotSmi modifies register at. |
- JumpIfNotSmi(scratch, &has_context, temporary); |
- lw(at, MemOperand(at, CommonFrameConstants::kCallerFPOffset)); |
- Branch(&load_context); |
- bind(&has_context); |
- |
- // In debug mode, make sure the lexical context is set. |
-#ifdef DEBUG |
- Check(ne, kWeShouldNotHaveAnEmptyLexicalContext, |
- scratch, Operand(zero_reg)); |
-#endif |
- |
- // Load the native context of the current context. |
- lw(scratch, ContextMemOperand(scratch, Context::NATIVE_CONTEXT_INDEX)); |
- |
- // Check the context is a native context. |
- if (emit_debug_code()) { |
- push(holder_reg); // Temporarily save holder on the stack. |
- // Read the first word and compare to the native_context_map. |
- lw(holder_reg, FieldMemOperand(scratch, HeapObject::kMapOffset)); |
- LoadRoot(at, Heap::kNativeContextMapRootIndex); |
- Check(eq, kJSGlobalObjectNativeContextShouldBeANativeContext, |
- holder_reg, Operand(at)); |
- pop(holder_reg); // Restore holder. |
- } |
- |
- // Check if both contexts are the same. |
- lw(at, FieldMemOperand(holder_reg, JSGlobalProxy::kNativeContextOffset)); |
- Branch(&same_contexts, eq, scratch, Operand(at)); |
- |
- // Check the context is a native context. |
- if (emit_debug_code()) { |
- push(holder_reg); // Temporarily save holder on the stack. |
- mov(holder_reg, at); // Move at to its holding place. |
- LoadRoot(at, Heap::kNullValueRootIndex); |
- Check(ne, kJSGlobalProxyContextShouldNotBeNull, |
- holder_reg, Operand(at)); |
- |
- lw(holder_reg, FieldMemOperand(holder_reg, HeapObject::kMapOffset)); |
- LoadRoot(at, Heap::kNativeContextMapRootIndex); |
- Check(eq, kJSGlobalObjectNativeContextShouldBeANativeContext, |
- holder_reg, Operand(at)); |
- // Restore at is not needed. at is reloaded below. |
- pop(holder_reg); // Restore holder. |
- // Restore at to holder's context. |
- lw(at, FieldMemOperand(holder_reg, JSGlobalProxy::kNativeContextOffset)); |
- } |
- |
- // Check that the security token in the calling global object is |
- // compatible with the security token in the receiving global |
- // object. |
- int token_offset = Context::kHeaderSize + |
- Context::SECURITY_TOKEN_INDEX * kPointerSize; |
- |
- lw(scratch, FieldMemOperand(scratch, token_offset)); |
- lw(at, FieldMemOperand(at, token_offset)); |
- Branch(miss, ne, scratch, Operand(at)); |
- |
- bind(&same_contexts); |
-} |
- |
- |
// Compute the hash code from the untagged key. This must be kept in sync with |
// ComputeIntegerHash in utils.h and KeyedLoadGenericStub in |
// code-stub-hydrogen.cc |