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 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_MIPS | 7 #if V8_TARGET_ARCH_MIPS |
8 | 8 |
9 #include "src/codegen.h" | 9 #include "src/codegen.h" |
10 #include "src/ic-inl.h" | 10 #include "src/ic-inl.h" |
(...skipping 558 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
569 } | 569 } |
570 | 570 |
571 // Return the value (register v0). | 571 // Return the value (register v0). |
572 DCHECK(value_reg.is(a0)); | 572 DCHECK(value_reg.is(a0)); |
573 __ bind(&exit); | 573 __ bind(&exit); |
574 __ Ret(USE_DELAY_SLOT); | 574 __ Ret(USE_DELAY_SLOT); |
575 __ mov(v0, a0); | 575 __ mov(v0, a0); |
576 } | 576 } |
577 | 577 |
578 | 578 |
579 void NamedStoreHandlerCompiler::GenerateStoreField(LookupResult* lookup, | 579 void NamedStoreHandlerCompiler::GenerateStoreField(LookupIterator* lookup, |
580 Register value_reg, | 580 Register value_reg, |
581 Label* miss_label) { | 581 Label* miss_label) { |
582 DCHECK(lookup->representation().IsHeapObject()); | 582 DCHECK(lookup->representation().IsHeapObject()); |
583 __ JumpIfSmi(value_reg, miss_label); | 583 __ JumpIfSmi(value_reg, miss_label); |
584 HeapType::Iterator<Map> it = lookup->GetFieldType()->Classes(); | 584 HeapType::Iterator<Map> it = lookup->GetFieldType()->Classes(); |
585 __ lw(scratch1(), FieldMemOperand(value_reg, HeapObject::kMapOffset)); | 585 __ lw(scratch1(), FieldMemOperand(value_reg, HeapObject::kMapOffset)); |
586 Label do_store; | 586 Label do_store; |
587 Handle<Map> current; | 587 Handle<Map> current; |
588 while (true) { | 588 while (true) { |
589 // Do the CompareMap() directly within the Branch() functions. | 589 // Do the CompareMap() directly within the Branch() functions. |
(...skipping 574 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1164 | 1164 |
1165 TailCallBuiltin(masm, Builtins::kKeyedLoadIC_Miss); | 1165 TailCallBuiltin(masm, Builtins::kKeyedLoadIC_Miss); |
1166 } | 1166 } |
1167 | 1167 |
1168 | 1168 |
1169 #undef __ | 1169 #undef __ |
1170 | 1170 |
1171 } } // namespace v8::internal | 1171 } } // namespace v8::internal |
1172 | 1172 |
1173 #endif // V8_TARGET_ARCH_MIPS | 1173 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |