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 #include "src/bootstrapper.h" | 7 #include "src/bootstrapper.h" |
8 #include "src/code-stubs.h" | 8 #include "src/code-stubs.h" |
9 #include "src/cpu-profiler.h" | 9 #include "src/cpu-profiler.h" |
10 #include "src/factory.h" | 10 #include "src/factory.h" |
(...skipping 494 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
505 | 505 |
506 | 506 |
507 void JSEntryStub::FinishCode(Handle<Code> code) { | 507 void JSEntryStub::FinishCode(Handle<Code> code) { |
508 Handle<FixedArray> handler_table = | 508 Handle<FixedArray> handler_table = |
509 code->GetIsolate()->factory()->NewFixedArray(1, TENURED); | 509 code->GetIsolate()->factory()->NewFixedArray(1, TENURED); |
510 handler_table->set(0, Smi::FromInt(handler_offset_)); | 510 handler_table->set(0, Smi::FromInt(handler_offset_)); |
511 code->set_handler_table(*handler_table); | 511 code->set_handler_table(*handler_table); |
512 } | 512 } |
513 | 513 |
514 | 514 |
515 void KeyedLoadFastElementStub::InitializeInterfaceDescriptor( | |
516 CodeStubInterfaceDescriptor* descriptor) { | |
517 descriptor->register_param_count_ = KeyedLoadIC::kRegisterArgumentCount; | |
518 descriptor->register_params_ = KeyedLoadIC::registers; | |
519 descriptor->deoptimization_handler_ = | |
520 FUNCTION_ADDR(KeyedLoadIC_MissFromStubFailure); | |
521 } | |
522 | |
523 | |
524 void KeyedLoadDictionaryElementStub::InitializeInterfaceDescriptor( | |
525 CodeStubInterfaceDescriptor* descriptor) { | |
526 descriptor->register_param_count_ = KeyedLoadIC::kRegisterArgumentCount; | |
527 descriptor->register_params_ = KeyedLoadIC::registers; | |
528 descriptor->deoptimization_handler_ = | |
529 FUNCTION_ADDR(KeyedLoadIC_MissFromStubFailure); | |
530 } | |
531 | |
532 | |
533 void KeyedLoadGenericElementStub::InitializeInterfaceDescriptor( | |
534 CodeStubInterfaceDescriptor* descriptor) { | |
535 descriptor->register_param_count_ = KeyedLoadIC::kRegisterArgumentCount; | |
536 descriptor->register_params_ = KeyedLoadIC::registers; | |
537 descriptor->deoptimization_handler_ = | |
538 Runtime::FunctionForId(Runtime::kKeyedGetProperty)->entry; | |
539 } | |
540 | |
541 | |
542 void KeyedLoadDictionaryElementPlatformStub::Generate( | 515 void KeyedLoadDictionaryElementPlatformStub::Generate( |
543 MacroAssembler* masm) { | 516 MacroAssembler* masm) { |
544 KeyedLoadStubCompiler::GenerateLoadDictionaryElement(masm); | 517 KeyedLoadStubCompiler::GenerateLoadDictionaryElement(masm); |
545 } | 518 } |
546 | 519 |
547 | 520 |
548 void CreateAllocationSiteStub::GenerateAheadOfTime(Isolate* isolate) { | 521 void CreateAllocationSiteStub::GenerateAheadOfTime(Isolate* isolate) { |
549 CreateAllocationSiteStub stub(isolate); | 522 CreateAllocationSiteStub stub(isolate); |
550 stub.GetCode(); | 523 stub.GetCode(); |
551 } | 524 } |
(...skipping 277 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
829 InstallDescriptor(isolate, &stub3); | 802 InstallDescriptor(isolate, &stub3); |
830 } | 803 } |
831 | 804 |
832 InternalArrayConstructorStub::InternalArrayConstructorStub( | 805 InternalArrayConstructorStub::InternalArrayConstructorStub( |
833 Isolate* isolate) : PlatformCodeStub(isolate) { | 806 Isolate* isolate) : PlatformCodeStub(isolate) { |
834 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); | 807 InternalArrayConstructorStubBase::GenerateStubsAheadOfTime(isolate); |
835 } | 808 } |
836 | 809 |
837 | 810 |
838 } } // namespace v8::internal | 811 } } // namespace v8::internal |
OLD | NEW |