| 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_MIPS64 | 7 #if V8_TARGET_ARCH_MIPS64 |
| 8 | 8 |
| 9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
| 10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 65 | 65 |
| 66 void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( | 66 void FastCloneShallowObjectStub::InitializeInterfaceDescriptor( |
| 67 CodeStubInterfaceDescriptor* descriptor) { | 67 CodeStubInterfaceDescriptor* descriptor) { |
| 68 Register registers[] = { cp, a3, a2, a1, a0 }; | 68 Register registers[] = { cp, a3, a2, a1, a0 }; |
| 69 descriptor->Initialize( | 69 descriptor->Initialize( |
| 70 MajorKey(), ARRAY_SIZE(registers), registers, | 70 MajorKey(), ARRAY_SIZE(registers), registers, |
| 71 Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry); | 71 Runtime::FunctionForId(Runtime::kCreateObjectLiteral)->entry); |
| 72 } | 72 } |
| 73 | 73 |
| 74 | 74 |
| 75 void CallFunctionStub::InitializeInterfaceDescriptor( |
| 76 CodeStubInterfaceDescriptor* descriptor) { |
| 77 UNIMPLEMENTED(); |
| 78 } |
| 79 |
| 80 |
| 81 void CallConstructStub::InitializeInterfaceDescriptor( |
| 82 CodeStubInterfaceDescriptor* descriptor) { |
| 83 UNIMPLEMENTED(); |
| 84 } |
| 85 |
| 86 |
| 75 void CreateAllocationSiteStub::InitializeInterfaceDescriptor( | 87 void CreateAllocationSiteStub::InitializeInterfaceDescriptor( |
| 76 CodeStubInterfaceDescriptor* descriptor) { | 88 CodeStubInterfaceDescriptor* descriptor) { |
| 77 Register registers[] = { cp, a2, a3 }; | 89 Register registers[] = { cp, a2, a3 }; |
| 78 descriptor->Initialize(MajorKey(), ARRAY_SIZE(registers), registers); | 90 descriptor->Initialize(MajorKey(), ARRAY_SIZE(registers), registers); |
| 79 } | 91 } |
| 80 | 92 |
| 81 | 93 |
| 82 void RegExpConstructResultStub::InitializeInterfaceDescriptor( | 94 void RegExpConstructResultStub::InitializeInterfaceDescriptor( |
| 83 CodeStubInterfaceDescriptor* descriptor) { | 95 CodeStubInterfaceDescriptor* descriptor) { |
| 84 Register registers[] = { cp, a2, a1, a0 }; | 96 Register registers[] = { cp, a2, a1, a0 }; |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 148 int constant_stack_parameter_count) { | 160 int constant_stack_parameter_count) { |
| 149 // register state | 161 // register state |
| 150 // cp -- context | 162 // cp -- context |
| 151 // a0 -- number of arguments | 163 // a0 -- number of arguments |
| 152 // a1 -- constructor function | 164 // a1 -- constructor function |
| 153 Address deopt_handler = Runtime::FunctionForId( | 165 Address deopt_handler = Runtime::FunctionForId( |
| 154 Runtime::kInternalArrayConstructor)->entry; | 166 Runtime::kInternalArrayConstructor)->entry; |
| 155 | 167 |
| 156 if (constant_stack_parameter_count == 0) { | 168 if (constant_stack_parameter_count == 0) { |
| 157 Register registers[] = { cp, a1 }; | 169 Register registers[] = { cp, a1 }; |
| 158 descriptor->Initialize(MajorKey(), ARRAY_SIZE(registers), registers, | 170 descriptor->Initialize(major, ARRAY_SIZE(registers), registers, |
| 159 deopt_handler, NULL, constant_stack_parameter_count, | 171 deopt_handler, NULL, constant_stack_parameter_count, |
| 160 JS_FUNCTION_STUB_MODE); | 172 JS_FUNCTION_STUB_MODE); |
| 161 } else { | 173 } else { |
| 162 // stack param count needs (constructor pointer, and single argument) | 174 // stack param count needs (constructor pointer, and single argument) |
| 163 Register registers[] = { cp, a1, a0 }; | 175 Register registers[] = { cp, a1, a0 }; |
| 164 Representation representations[] = { | 176 Representation representations[] = { |
| 165 Representation::Tagged(), | 177 Representation::Tagged(), |
| 166 Representation::Tagged(), | 178 Representation::Tagged(), |
| 167 Representation::Integer32() }; | 179 Representation::Integer32() }; |
| 168 descriptor->Initialize(MajorKey(), ARRAY_SIZE(registers), registers, a0, | 180 descriptor->Initialize(major, ARRAY_SIZE(registers), registers, a0, |
| 169 deopt_handler, representations, | 181 deopt_handler, representations, |
| 170 constant_stack_parameter_count, | 182 constant_stack_parameter_count, |
| 171 JS_FUNCTION_STUB_MODE, PASS_ARGUMENTS); | 183 JS_FUNCTION_STUB_MODE, PASS_ARGUMENTS); |
| 172 } | 184 } |
| 173 } | 185 } |
| 174 | 186 |
| 175 | 187 |
| 176 void ArrayNoArgumentConstructorStub::InitializeInterfaceDescriptor( | 188 void ArrayNoArgumentConstructorStub::InitializeInterfaceDescriptor( |
| 177 CodeStubInterfaceDescriptor* descriptor) { | 189 CodeStubInterfaceDescriptor* descriptor) { |
| 178 InitializeArrayConstructorDescriptor(MajorKey(), descriptor, 0); | 190 InitializeArrayConstructorDescriptor(MajorKey(), descriptor, 0); |
| (...skipping 5129 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 5308 MemOperand(fp, 6 * kPointerSize), | 5320 MemOperand(fp, 6 * kPointerSize), |
| 5309 NULL); | 5321 NULL); |
| 5310 } | 5322 } |
| 5311 | 5323 |
| 5312 | 5324 |
| 5313 #undef __ | 5325 #undef __ |
| 5314 | 5326 |
| 5315 } } // namespace v8::internal | 5327 } } // namespace v8::internal |
| 5316 | 5328 |
| 5317 #endif // V8_TARGET_ARCH_MIPS64 | 5329 #endif // V8_TARGET_ARCH_MIPS64 |
| OLD | NEW |