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/handler-compiler.h" | 7 #include "src/ic/handler-compiler.h" |
8 | 8 |
9 #include "src/api-arguments.h" | 9 #include "src/api-arguments.h" |
10 #include "src/field-type.h" | 10 #include "src/field-type.h" |
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
521 | 521 |
522 void NamedLoadHandlerCompiler::FrontendFooter(Handle<Name> name, Label* miss) { | 522 void NamedLoadHandlerCompiler::FrontendFooter(Handle<Name> name, Label* miss) { |
523 if (!miss->is_unused()) { | 523 if (!miss->is_unused()) { |
524 Label success; | 524 Label success; |
525 __ Branch(&success); | 525 __ Branch(&success); |
526 __ bind(miss); | 526 __ bind(miss); |
527 if (IC::ICUseVector(kind())) { | 527 if (IC::ICUseVector(kind())) { |
528 DCHECK(kind() == Code::LOAD_IC); | 528 DCHECK(kind() == Code::LOAD_IC); |
529 PopVectorAndSlot(); | 529 PopVectorAndSlot(); |
530 } | 530 } |
531 TailCallBuiltin(masm(), MissBuiltin(kind())); | 531 TailCallMissHandler(masm(), kind()); |
532 __ bind(&success); | 532 __ bind(&success); |
533 } | 533 } |
534 } | 534 } |
535 | 535 |
536 | 536 |
537 void NamedStoreHandlerCompiler::FrontendFooter(Handle<Name> name, Label* miss) { | 537 void NamedStoreHandlerCompiler::FrontendFooter(Handle<Name> name, Label* miss) { |
538 if (!miss->is_unused()) { | 538 if (!miss->is_unused()) { |
539 Label success; | 539 Label success; |
540 __ Branch(&success); | 540 __ Branch(&success); |
541 GenerateRestoreName(miss, name); | 541 GenerateRestoreName(miss, name); |
542 if (IC::ICUseVector(kind())) PopVectorAndSlot(); | 542 if (IC::ICUseVector(kind())) PopVectorAndSlot(); |
543 TailCallBuiltin(masm(), MissBuiltin(kind())); | 543 TailCallMissHandler(masm(), kind()); |
544 __ bind(&success); | 544 __ bind(&success); |
545 } | 545 } |
546 } | 546 } |
547 | 547 |
548 | 548 |
549 void NamedLoadHandlerCompiler::GenerateLoadConstant(Handle<Object> value) { | 549 void NamedLoadHandlerCompiler::GenerateLoadConstant(Handle<Object> value) { |
550 // Return the constant value. | 550 // Return the constant value. |
551 __ li(v0, value); | 551 __ li(v0, value); |
552 __ Ret(); | 552 __ Ret(); |
553 } | 553 } |
(...skipping 135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
689 // Return the generated code. | 689 // Return the generated code. |
690 return GetCode(kind(), name); | 690 return GetCode(kind(), name); |
691 } | 691 } |
692 | 692 |
693 | 693 |
694 #undef __ | 694 #undef __ |
695 } // namespace internal | 695 } // namespace internal |
696 } // namespace v8 | 696 } // namespace v8 |
697 | 697 |
698 #endif // V8_TARGET_ARCH_MIPS | 698 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |