| OLD | NEW |
| 1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 | 5 |
| 6 | 6 |
| 7 #include "src/v8.h" | 7 #include "src/v8.h" |
| 8 | 8 |
| 9 #if V8_TARGET_ARCH_MIPS64 | 9 #if V8_TARGET_ARCH_MIPS64 |
| 10 | 10 |
| (...skipping 1059 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1070 // Check that it has indexed interceptor and access checks | 1070 // Check that it has indexed interceptor and access checks |
| 1071 // are not enabled for this object. | 1071 // are not enabled for this object. |
| 1072 __ lbu(scratch2, FieldMemOperand(scratch1, Map::kBitFieldOffset)); | 1072 __ lbu(scratch2, FieldMemOperand(scratch1, Map::kBitFieldOffset)); |
| 1073 __ And(scratch2, scratch2, Operand(kSlowCaseBitFieldMask)); | 1073 __ And(scratch2, scratch2, Operand(kSlowCaseBitFieldMask)); |
| 1074 __ Branch(&slow, ne, scratch2, Operand(1 << Map::kHasIndexedInterceptor)); | 1074 __ Branch(&slow, ne, scratch2, Operand(1 << Map::kHasIndexedInterceptor)); |
| 1075 // Everything is fine, call runtime. | 1075 // Everything is fine, call runtime. |
| 1076 __ Push(receiver, key); // Receiver, key. | 1076 __ Push(receiver, key); // Receiver, key. |
| 1077 | 1077 |
| 1078 // Perform tail call to the entry. | 1078 // Perform tail call to the entry. |
| 1079 __ TailCallExternalReference(ExternalReference( | 1079 __ TailCallExternalReference(ExternalReference( |
| 1080 IC_Utility(kKeyedLoadPropertyWithInterceptor), masm->isolate()), 2, 1); | 1080 IC_Utility(kLoadElementWithInterceptor), masm->isolate()), 2, 1); |
| 1081 | 1081 |
| 1082 __ bind(&slow); | 1082 __ bind(&slow); |
| 1083 GenerateMiss(masm); | 1083 GenerateMiss(masm); |
| 1084 } | 1084 } |
| 1085 | 1085 |
| 1086 | 1086 |
| 1087 void KeyedStoreIC::GenerateMiss(MacroAssembler* masm) { | 1087 void KeyedStoreIC::GenerateMiss(MacroAssembler* masm) { |
| 1088 // Push receiver, key and value for runtime call. | 1088 // Push receiver, key and value for runtime call. |
| 1089 __ Push(ReceiverRegister(), NameRegister(), ValueRegister()); | 1089 __ Push(ReceiverRegister(), NameRegister(), ValueRegister()); |
| 1090 | 1090 |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1272 } else { | 1272 } else { |
| 1273 ASSERT(Assembler::IsBne(branch_instr)); | 1273 ASSERT(Assembler::IsBne(branch_instr)); |
| 1274 patcher.ChangeBranchCondition(eq); | 1274 patcher.ChangeBranchCondition(eq); |
| 1275 } | 1275 } |
| 1276 } | 1276 } |
| 1277 | 1277 |
| 1278 | 1278 |
| 1279 } } // namespace v8::internal | 1279 } } // namespace v8::internal |
| 1280 | 1280 |
| 1281 #endif // V8_TARGET_ARCH_MIPS64 | 1281 #endif // V8_TARGET_ARCH_MIPS64 |
| OLD | NEW |