OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #if V8_TARGET_ARCH_MIPS | 5 #if V8_TARGET_ARCH_MIPS |
6 | 6 |
7 #include "src/ic/call-optimization.h" | 7 #include "src/ic/call-optimization.h" |
8 #include "src/ic/handler-compiler.h" | 8 #include "src/ic/handler-compiler.h" |
9 #include "src/ic/ic.h" | 9 #include "src/ic/ic.h" |
10 #include "src/isolate-inl.h" | 10 #include "src/isolate-inl.h" |
(...skipping 750 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
761 __ LoadWeakValue(result, weak_cell, &miss); | 761 __ LoadWeakValue(result, weak_cell, &miss); |
762 __ lw(result, FieldMemOperand(result, PropertyCell::kValueOffset)); | 762 __ lw(result, FieldMemOperand(result, PropertyCell::kValueOffset)); |
763 | 763 |
764 // Check for deleted property if property can actually be deleted. | 764 // Check for deleted property if property can actually be deleted. |
765 if (is_configurable) { | 765 if (is_configurable) { |
766 __ LoadRoot(at, Heap::kTheHoleValueRootIndex); | 766 __ LoadRoot(at, Heap::kTheHoleValueRootIndex); |
767 __ Branch(&miss, eq, result, Operand(at)); | 767 __ Branch(&miss, eq, result, Operand(at)); |
768 } | 768 } |
769 | 769 |
770 Counters* counters = isolate()->counters(); | 770 Counters* counters = isolate()->counters(); |
771 __ IncrementCounter(counters->named_load_global_stub(), 1, a1, a3); | 771 __ IncrementCounter(counters->ic_named_load_global_stub(), 1, a1, a3); |
772 if (IC::ICUseVector(kind())) { | 772 if (IC::ICUseVector(kind())) { |
773 DiscardVectorAndSlot(); | 773 DiscardVectorAndSlot(); |
774 } | 774 } |
775 __ Ret(USE_DELAY_SLOT); | 775 __ Ret(USE_DELAY_SLOT); |
776 __ mov(v0, result); | 776 __ mov(v0, result); |
777 | 777 |
778 FrontendFooter(name, &miss); | 778 FrontendFooter(name, &miss); |
779 | 779 |
780 // Return the generated code. | 780 // Return the generated code. |
781 return GetCode(kind(), Code::NORMAL, name); | 781 return GetCode(kind(), Code::NORMAL, name); |
782 } | 782 } |
783 | 783 |
784 | 784 |
785 #undef __ | 785 #undef __ |
786 } // namespace internal | 786 } // namespace internal |
787 } // namespace v8 | 787 } // namespace v8 |
788 | 788 |
789 #endif // V8_TARGET_ARCH_MIPS | 789 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |