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 "v8.h" | 5 #include "v8.h" |
6 | 6 |
7 #if V8_TARGET_ARCH_X87 | 7 #if V8_TARGET_ARCH_X87 |
8 | 8 |
9 #include "bootstrapper.h" | 9 #include "bootstrapper.h" |
10 #include "code-stubs.h" | 10 #include "code-stubs.h" |
(...skipping 305 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
316 void ElementsTransitionAndStoreStub::InitializeInterfaceDescriptor( | 316 void ElementsTransitionAndStoreStub::InitializeInterfaceDescriptor( |
317 CodeStubInterfaceDescriptor* descriptor) { | 317 CodeStubInterfaceDescriptor* descriptor) { |
318 static Register registers[] = { eax, ebx, ecx, edx }; | 318 static Register registers[] = { eax, ebx, ecx, edx }; |
319 descriptor->register_param_count_ = 4; | 319 descriptor->register_param_count_ = 4; |
320 descriptor->register_params_ = registers; | 320 descriptor->register_params_ = registers; |
321 descriptor->deoptimization_handler_ = | 321 descriptor->deoptimization_handler_ = |
322 FUNCTION_ADDR(ElementsTransitionAndStoreIC_Miss); | 322 FUNCTION_ADDR(ElementsTransitionAndStoreIC_Miss); |
323 } | 323 } |
324 | 324 |
325 | 325 |
326 void ArrayShiftStub::InitializeInterfaceDescriptor( | |
327 CodeStubInterfaceDescriptor* descriptor) { | |
328 static Register registers[] = { eax }; | |
329 descriptor->register_param_count_ = 1; | |
330 descriptor->register_params_ = registers; | |
331 descriptor->deoptimization_handler_ = | |
332 Builtins::c_function_address(Builtins::c_ArrayShift); | |
333 } | |
334 | |
335 | |
336 void BinaryOpICStub::InitializeInterfaceDescriptor( | 326 void BinaryOpICStub::InitializeInterfaceDescriptor( |
337 CodeStubInterfaceDescriptor* descriptor) { | 327 CodeStubInterfaceDescriptor* descriptor) { |
338 static Register registers[] = { edx, eax }; | 328 static Register registers[] = { edx, eax }; |
339 descriptor->register_param_count_ = 2; | 329 descriptor->register_param_count_ = 2; |
340 descriptor->register_params_ = registers; | 330 descriptor->register_params_ = registers; |
341 descriptor->deoptimization_handler_ = FUNCTION_ADDR(BinaryOpIC_Miss); | 331 descriptor->deoptimization_handler_ = FUNCTION_ADDR(BinaryOpIC_Miss); |
342 descriptor->SetMissHandler( | 332 descriptor->SetMissHandler( |
343 ExternalReference(IC_Utility(IC::kBinaryOpIC_Miss), isolate())); | 333 ExternalReference(IC_Utility(IC::kBinaryOpIC_Miss), isolate())); |
344 } | 334 } |
345 | 335 |
(...skipping 4425 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4771 Operand(ebp, 7 * kPointerSize), | 4761 Operand(ebp, 7 * kPointerSize), |
4772 NULL); | 4762 NULL); |
4773 } | 4763 } |
4774 | 4764 |
4775 | 4765 |
4776 #undef __ | 4766 #undef __ |
4777 | 4767 |
4778 } } // namespace v8::internal | 4768 } } // namespace v8::internal |
4779 | 4769 |
4780 #endif // V8_TARGET_ARCH_X87 | 4770 #endif // V8_TARGET_ARCH_X87 |
OLD | NEW |