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 #if V8_TARGET_ARCH_MIPS | 5 #if V8_TARGET_ARCH_MIPS |
6 | 6 |
7 // Note on Mips implementation: | 7 // Note on Mips implementation: |
8 // | 8 // |
9 // The result_register() for mips is the 'v0' register, which is defined | 9 // The result_register() for mips is the 'v0' register, which is defined |
10 // by the ABI to contain function return values. However, the first | 10 // by the ABI to contain function return values. However, the first |
(...skipping 859 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
870 void FullCodeGenerator::DeclareGlobals(Handle<FixedArray> pairs) { | 870 void FullCodeGenerator::DeclareGlobals(Handle<FixedArray> pairs) { |
871 // Call the runtime to declare the globals. | 871 // Call the runtime to declare the globals. |
872 __ li(a1, Operand(pairs)); | 872 __ li(a1, Operand(pairs)); |
873 __ li(a0, Operand(Smi::FromInt(DeclareGlobalsFlags()))); | 873 __ li(a0, Operand(Smi::FromInt(DeclareGlobalsFlags()))); |
874 __ Push(a1, a0); | 874 __ Push(a1, a0); |
875 __ CallRuntime(Runtime::kDeclareGlobals); | 875 __ CallRuntime(Runtime::kDeclareGlobals); |
876 // Return value is ignored. | 876 // Return value is ignored. |
877 } | 877 } |
878 | 878 |
879 | 879 |
880 void FullCodeGenerator::DeclareModules(Handle<FixedArray> descriptions) { | |
881 // Call the runtime to declare the modules. | |
882 __ Push(descriptions); | |
883 __ CallRuntime(Runtime::kDeclareModules); | |
884 // Return value is ignored. | |
885 } | |
886 | |
887 | |
888 void FullCodeGenerator::VisitSwitchStatement(SwitchStatement* stmt) { | 880 void FullCodeGenerator::VisitSwitchStatement(SwitchStatement* stmt) { |
889 Comment cmnt(masm_, "[ SwitchStatement"); | 881 Comment cmnt(masm_, "[ SwitchStatement"); |
890 Breakable nested_statement(this, stmt); | 882 Breakable nested_statement(this, stmt); |
891 SetStatementPosition(stmt); | 883 SetStatementPosition(stmt); |
892 | 884 |
893 // Keep the switch value on the stack until a case matches. | 885 // Keep the switch value on the stack until a case matches. |
894 VisitForStackValue(stmt->tag()); | 886 VisitForStackValue(stmt->tag()); |
895 PrepareForBailoutForId(stmt->EntryId(), BailoutState::NO_REGISTERS); | 887 PrepareForBailoutForId(stmt->EntryId(), BailoutState::NO_REGISTERS); |
896 | 888 |
897 ZoneList<CaseClause*>* clauses = stmt->cases(); | 889 ZoneList<CaseClause*>* clauses = stmt->cases(); |
(...skipping 2906 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3804 reinterpret_cast<uint32_t>( | 3796 reinterpret_cast<uint32_t>( |
3805 isolate->builtins()->OnStackReplacement()->entry())); | 3797 isolate->builtins()->OnStackReplacement()->entry())); |
3806 return ON_STACK_REPLACEMENT; | 3798 return ON_STACK_REPLACEMENT; |
3807 } | 3799 } |
3808 | 3800 |
3809 | 3801 |
3810 } // namespace internal | 3802 } // namespace internal |
3811 } // namespace v8 | 3803 } // namespace v8 |
3812 | 3804 |
3813 #endif // V8_TARGET_ARCH_MIPS | 3805 #endif // V8_TARGET_ARCH_MIPS |
OLD | NEW |